Constructs a new poolifier fixed thread pool.
Number of threads for this pool.
Path to an implementation of a ThreadWorker
file, which can be relative or absolute.
Optional
opts: PoolOptions<ThreadWorkerWithMessageChannel> = {}Options for this fixed thread pool.
Optional
Readonly
emitterReadonly
fileOptional
Readonly
maxProtected
nextId of the next message.
Readonly
numberReadonly
optsProtected
promiseThe promise map.
key
: This is the message Id of each submitted task.value
: An object that contains the worker, the resolve function and the reject function.When we receive a message from the worker we get a map entry and resolve/reject the promise based on the message.
Protected
workerWorker choice strategy instance implementing the worker choice algorithm.
Default to a strategy implementing a round robin algorithm.
Readonly
workersReadonly
workersProtected
afterHook executed after the worker task promise resolution. Can be overridden.
The received message.
The Promise response.
Protected
afterProtected
beforeHook executed before the worker task promise resolution. Can be overridden.
The worker.
Protected
chooseChooses a worker for the next task.
The default implementation uses a round robin algorithm to distribute the load.
Worker.
Protected
createCreates a new worker for this pool and sets it up completely.
New, completely set up worker.
Protected
createInitializes tasks usage statistics.
The worker.
Protected
internalProtected
internalProtected
isProtected
removeRemoves the given worker from the pool.
Worker that will be removed.
Protected
sendProtected
setupProtected
workerThis function is the listener registered for each worker.
The listener function to execute when a message is received from a worker.
This function is the listener registered for each worker.
The listener function to execute when a message is received from a worker.
Generated using TypeDoc
A thread pool with a fixed number of threads.
It is possible to perform tasks in sync or asynchronous mode as you prefer.
This pool selects the threads in a round robin fashion.
Template
of data sent to the worker. This can only be serializable data.
Template
of response of execution. This can only be serializable data.
Author
Alessandro Pio Ardizio
Since
0.0.1