X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=examples%2FfixedExample.js;h=1f5ac4ea4e19f52ec474de4c12c6ed314f78704e;hb=670ede1cd02d1934860757fc7ea28ed0e963f6cc;hp=478c37eb056229360dbdbabcf61ab13e7f058e74;hpb=53795b86368cc6c3ec0648706fa385bdb6ca316d;p=poolifier.git diff --git a/examples/fixedExample.js b/examples/fixedExample.js index 478c37eb..1f5ac4ea 100644 --- a/examples/fixedExample.js +++ b/examples/fixedExample.js @@ -1,21 +1,30 @@ -const { FixedThreadPool, PoolEvents } = require('poolifier') -let resolved = 0 -let poolBusy = 0 -const pool = new FixedThreadPool(15, './yourWorker.js', { +'use strict' +const { + FixedThreadPool, + PoolEvents, + availableParallelism +} = require('poolifier') + +const pool = new FixedThreadPool(availableParallelism(), './yourWorker.js', { errorHandler: e => console.error(e), onlineHandler: () => console.info('worker is online') }) +let poolReady = 0 +let poolBusy = 0 +pool.emitter.on(PoolEvents.ready, () => poolReady++) pool.emitter.on(PoolEvents.busy, () => poolBusy++) +let resolved = 0 const start = performance.now() const iterations = 1000 for (let i = 1; i <= iterations; i++) { pool - .execute({}) + .execute() .then(() => { resolved++ if (resolved === iterations) { console.info('Time taken is ' + (performance.now() - start)) + console.info('The pool was ready for ' + poolReady + ' times') return console.info('The pool was busy for ' + poolBusy + ' times') } return null