refactor: cleanup javascript example
[poolifier.git] / examples / javascript / dynamicExample.js
index 3428170929d49c05d6e2b0b794b875377e0a77a8..2783c171774e5d3b77cd16179d4a258d10ef9572 100644 (file)
@@ -10,16 +10,16 @@ const pool = new DynamicThreadPool(
   availableParallelism(),
   './yourWorker.js',
   {
-    errorHandler: (e) => console.error(e),
+    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++)
+pool.emitter?.on(PoolEvents.full, () => poolFull++)
+pool.emitter?.on(PoolEvents.ready, () => poolReady++)
+pool.emitter?.on(PoolEvents.busy, () => poolBusy++)
 
 let resolved = 0
 const start = performance.now()
@@ -30,12 +30,15 @@ for (let i = 1; i <= iterations; i++) {
     .then(() => {
       resolved++
       if (resolved === iterations) {
-        console.info(`Time taken is ${performance.now() - start}`)
+        console.info(
+          `Time taken is ${(performance.now() - start).toFixed(2)}ms`
+        )
         console.info(`The pool was full for ${poolFull} times`)
         console.info(`The pool was ready for ${poolReady} times`)
-        return console.info(`The pool was busy for ${poolBusy} times`)
+        console.info(`The pool was busy for ${poolBusy} times`)
+        return pool.destroy()
       }
       return null
     })
-    .catch((err) => console.error(err))
+    .catch(err => console.error(err))
 }