-const { DynamicThreadPool } = require('poolifier')
-let resolved = 0
-let maxReached = 0
-const pool = new DynamicThreadPool(10, 20, './yourWorker.js', {
- errorHandler: e => console.error(e),
- onlineHandler: () => console.log('worker is online')
-})
-pool.emitter.on('FullPool', () => maxReached++)
+const {
+ DynamicThreadPool,
+ PoolEvents,
+ availableParallelism
+} = require('poolifier')
+
+const pool = new DynamicThreadPool(
+ Math.floor(availableParallelism() / 2),
+ availableParallelism(),
+ './yourWorker.js',
+ {
+ errorHandler: e => console.error(e),
+ onlineHandler: () => console.info('worker is online')
+ }
+)
+let poolFull = 0
+let poolReady = 0
+let poolBusy = 0
+pool.emitter.on(PoolEvents.full, () => poolFull++)
+pool.emitter.on(PoolEvents.ready, () => poolReady++)
+pool.emitter.on(PoolEvents.busy, () => poolBusy++)