Commit | Line | Data |
---|---|---|
ff5e76e1 JB |
1 | const { |
2 | DynamicThreadPool, | |
3 | WorkerChoiceStrategies | |
4 | } = require('../../../lib/index') | |
5 | const { runTest } = require('../benchmark-utils') | |
325f50bc S |
6 | |
7 | const size = 30 | |
8 | ||
ff5e76e1 JB |
9 | const dynamicPool = new DynamicThreadPool( |
10 | size / 2, | |
11 | size * 3, | |
12 | './benchmarks/internal/thread/worker.js' | |
13 | ) | |
14 | ||
15 | const dynamicPoolLessRecentlyUsed = new DynamicThreadPool( | |
16 | size / 2, | |
17 | size * 3, | |
18 | './benchmarks/internal/thread/worker.js', | |
19 | { workerChoiceStrategy: DynamicThreadPool.LESS_RECENTLY_USED } | |
20 | ) | |
325f50bc S |
21 | |
22 | async function dynamicThreadTest ( | |
23 | { tasks, workerData } = { tasks: 1, workerData: { proof: 'ok' } } | |
24 | ) { | |
ff5e76e1 JB |
25 | return runTest(dynamicPool, { tasks, workerData }) |
26 | } | |
27 | ||
28 | async function dynamicThreadTestLessRecentlyUsed ( | |
29 | { tasks, workerData } = { tasks: 1, workerData: { proof: 'ok' } } | |
30 | ) { | |
31 | return runTest(dynamicPoolLessRecentlyUsed, { tasks, workerData }) | |
325f50bc S |
32 | } |
33 | ||
ff5e76e1 JB |
34 | module.exports = { |
35 | dynamicThreadTest, | |
36 | dynamicThreadTestLessRecentlyUsed | |
37 | } |