4 } = require('../../../lib/index')
5 const { runPoolifierTest
} = require('../../benchmarks-utils')
8 const numberOfTasks
= 1
10 const dynamicPool
= new DynamicThreadPool(
13 './benchmarks/internal/thread/worker.js'
16 const dynamicPoolLessRecentlyUsed
= new DynamicThreadPool(
19 './benchmarks/internal/thread/worker.js',
20 { workerChoiceStrategy
: WorkerChoiceStrategies
.LESS_USED
}
23 const dynamicPoolWeightedRoundRobin
= new DynamicThreadPool(
26 './benchmarks/internal/thread/worker.js',
27 { workerChoiceStrategy
: WorkerChoiceStrategies
.WEIGHTED_ROUND_ROBIN
}
30 const dynamicPoolFairShare
= new DynamicThreadPool(
33 './benchmarks/internal/thread/worker.js',
34 { workerChoiceStrategy
: WorkerChoiceStrategies
.FAIR_SHARE
}
37 async
function dynamicThreadTest (
38 { tasks
, workerData
} = { tasks
: numberOfTasks
, workerData
: { proof
: 'ok' } }
40 return runPoolifierTest(dynamicPool
, { tasks
, workerData
})
43 async
function dynamicThreadTestLessRecentlyUsed (
44 { tasks
, workerData
} = { tasks
: numberOfTasks
, workerData
: { proof
: 'ok' } }
46 return runPoolifierTest(dynamicPoolLessRecentlyUsed
, { tasks
, workerData
})
49 async
function dynamicThreadTestWeightedRoundRobin (
50 { tasks
, workerData
} = { tasks
: numberOfTasks
, workerData
: { proof
: 'ok' } }
52 return runPoolifierTest(dynamicPoolWeightedRoundRobin
, { tasks
, workerData
})
55 async
function dynamicThreadTestFairShare (
56 { tasks
, workerData
} = { tasks
: numberOfTasks
, workerData
: { proof
: 'ok' } }
58 return runPoolifierTest(dynamicPoolFairShare
, { tasks
, workerData
})
63 dynamicThreadTestLessRecentlyUsed
,
64 dynamicThreadTestWeightedRoundRobin
,
65 dynamicThreadTestFairShare