Add threadwork, microjob to external pools benchmark (#266)
[poolifier.git] / benchmarks / versus-external-pools / fixed-threadwork.js
CommitLineData
7f685093
JB
1// IMPORT LIBRARIES
2const { ThreadPool } = require('threadwork')
3// FINISH IMPORT LIBRARIES
4// IMPORT FUNCTION TO BENCH
5const functionToBench = require('./functions/function-to-bench')
6// FINISH IMPORT FUNCTION TO BENCH
7const size = process.env.POOL_SIZE
8const iterations = process.env.NUM_ITERATIONS
9const data = {
10 test: 'MYBENCH',
11 taskType: process.env['TASK_TYPE']
12}
13
14const threadPool = new ThreadPool({ task: functionToBench, size: size })
15
16async function run () {
17 const promises = []
18 for (let i = 0; i < iterations; i++) {
19 promises.push(threadPool.run(data))
20 }
21 await Promise.all(promises)
22 process.exit()
23}
24
25run()