Merge branch 'master' of github.com:jerome-benoit/poolifier
[poolifier.git] / examples / fixedExample.js
index d10c206281fe03af8b6c1e4e08399e50ff5a59b4..2346f7b4f0b68b207ced0df9ffd86f125e36a1e5 100644 (file)
@@ -1,13 +1,18 @@
-const { FixedThreadPool, PoolEvents } = require('poolifier')
-let resolved = 0
-let poolBusy = 0
-const pool = new FixedThreadPool(15, './yourWorker.js', {
+const {
+  FixedThreadPool,
+  PoolEvents,
+  availableParallelism
+} = require('poolifier')
+
+const pool = new FixedThreadPool(availableParallelism(), './yourWorker.js', {
   errorHandler: e => console.error(e),
-  onlineHandler: () => console.log('worker is online')
+  onlineHandler: () => console.info('worker is online')
 })
+let poolBusy = 0
 pool.emitter.on(PoolEvents.busy, () => poolBusy++)
 
-const start = Date.now()
+let resolved = 0
+const start = performance.now()
 const iterations = 1000
 for (let i = 1; i <= iterations; i++) {
   pool
@@ -15,8 +20,8 @@ for (let i = 1; i <= iterations; i++) {
     .then(() => {
       resolved++
       if (resolved === iterations) {
-        console.log('Time taken is ' + (Date.now() - start))
-        return console.log('The pool was busy for ' + poolBusy + ' times')
+        console.info('Time taken is ' + (performance.now() - start))
+        return console.info('The pool was busy for ' + poolBusy + ' times')
       }
       return null
     })