X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=README.md;h=e6d676ecdb28a27141de20c1ea08acfd4d064c7f;hb=67e8ef11907ab8ae70740d7c9f4d5d225ed8d522;hp=3001f098fdb0ba551ea6416bbabe5ab4b8d408f1;hpb=1c277f5889dcbfed65ca1862efba68198dcaa99c;p=poolifier.git diff --git a/README.md b/README.md index 3001f098..e6d676ec 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ ## Why Poolifier? -Poolifier is used to perform CPU intensive and I/O intensive tasks on nodejs servers, it implements worker pools using [worker-threads](https://nodejs.org/api/worker_threads.html#worker_threads_worker_threads) and cluster pools using [Node.js cluster](https://nodejs.org/api/cluster.html) modules. +Poolifier is used to perform CPU intensive and I/O intensive tasks on nodejs servers, it implements worker pools using [worker-threads](https://nodejs.org/api/worker_threads.html#worker_threads_worker_threads) and cluster pools using [cluster](https://nodejs.org/api/cluster.html) Node.js modules. With poolifier you can improve your **performance** and resolve problems related to the event loop. Moreover you can execute your tasks using an API designed to improve the **developer experience**. Please consult our [general guidelines](#general-guidance). @@ -122,15 +122,17 @@ const pool = new FixedThreadPool(availableParallelism(), './yourWorker.js', { onlineHandler: () => console.info('worker is online') }) +pool.emitter.on(PoolEvents.ready, () => console.info('Pool is ready')) pool.emitter.on(PoolEvents.busy, () => console.info('Pool is busy')) // or a dynamic worker-threads pool -const pool = new DynamicThreadPool(availableParallelism() / 2, availableParallelism(), './yourWorker.js', { +const pool = new DynamicThreadPool(Math.floor(availableParallelism() / 2), availableParallelism(), './yourWorker.js', { errorHandler: e => console.error(e), onlineHandler: () => console.info('worker is online') }) pool.emitter.on(PoolEvents.full, () => console.info('Pool is full')) +pool.emitter.on(PoolEvents.ready, () => console.info('Pool is ready')) pool.emitter.on(PoolEvents.busy, () => console.info('Pool is busy')) // the execute method signature is the same for both implementations,