Removed max tasks (#225)
[poolifier.git] / benchmarks / internal / thread / dynamic.js
1 const { DynamicThreadPool } = require('../../../lib/index')
2
3 const size = 30
4
5 const dynamicPool = new DynamicThreadPool(size / 2, size * 3, './worker.js')
6
7 async function dynamicThreadTest (
8 { tasks, workerData } = { tasks: 1, workerData: { proof: 'ok' } }
9 ) {
10 return new Promise((resolve, reject) => {
11 let executions = 0
12 for (let i = 0; i <= tasks; i++) {
13 dynamicPool
14 .execute(workerData)
15 .then(res => {
16 executions++
17 if (executions === tasks) {
18 return resolve('FINISH')
19 }
20 return null
21 })
22 .catch(err => console.error(err))
23 }
24 })
25 }
26
27 module.exports = { dynamicThreadTest }