feat: add 'full' event on dynamic pool emitter
[poolifier.git] / examples / fixedExample.js
1 const { FixedThreadPool } = require('poolifier')
2 let resolved = 0
3 let poolBusy = 0
4 const pool = new FixedThreadPool(15, './yourWorker.js', {
5 errorHandler: e => console.error(e),
6 onlineHandler: () => console.log('worker is online')
7 })
8 pool.emitter.on('busy', () => poolBusy++)
9
10 const start = Date.now()
11 const iterations = 1000
12 for (let i = 1; i <= iterations; i++) {
13 pool
14 .execute({})
15 .then(() => {
16 resolved++
17 if (resolved === iterations) {
18 console.log('Time taken is ' + (Date.now() - start))
19 return console.log('The pool was busy for ' + poolBusy + ' times')
20 }
21 return null
22 })
23 .catch(err => console.error(err))
24 }