X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Fclasses%2FDynamicThreadPool.html;h=fa708b4b42d12141a962733b982f30918d2e3620;hb=eb54ded947e06b1e1df82f4a9c6a1cc1d3f9efc3;hp=6910150bf4dd6529111bb2ca763a2a2770729168;hpb=d0f1dce33156fdb99f0ca3627839001909419497;p=poolifier.git diff --git a/docs/classes/DynamicThreadPool.html b/docs/classes/DynamicThreadPool.html index 6910150b..7a85327c 100644 --- a/docs/classes/DynamicThreadPool.html +++ b/docs/classes/DynamicThreadPool.html @@ -1,57 +1,714 @@ -
Constructs a new poolifier dynamic thread pool.
-Minimum number of threads which are always active.
-Maximum number of threads that can be created by this pool.
-Path to an implementation of a ThreadWorker
file, which can be relative or absolute.
Id of the next message.
-The 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.A thread pool with a dynamic number of threads, but a guaranteed minimum number of threads.
+This thread pool creates new threads when the others are busy, up to the maximum number of threads.
+When the maximum number of threads is reached and workers are busy, an event is emitted. If you want to listen to this event, use the pool's emitter
.
0.0.1
+Type of data sent to the worker. This can only be serializable data.
+Type of execution response. This can only be serializable data.
+Constructs a new poolifier dynamic thread pool.
+Minimum number of threads which are always active.
+Maximum number of threads that can be created by this pool.
+Path to an implementation of a ThreadWorker
file, which can be relative or absolute.
Options for this dynamic thread pool.
+Optional
Readonly
emitterEmitter on which events can be listened to.
+Events that can currently be listened to:
+'full'
: Emitted when the pool is dynamic and full.'busy'
: Emitted when the pool is busy.When we receive a message from the worker we get a map entry and resolve/reject the promise based on the message.
-Worker choice strategy instance implementing the worker choice algorithm.
-Default to a strategy implementing a round robin algorithm.
-Choose a worker for the next task.
-The default implementation uses a round robin algorithm to distribute the load.
-Worker.
-Creates a new worker for this pool and sets it up completely.
-New, completely set up worker.
-Decrease the number of tasks that the given worker has applied.
-Worker whose tasks are decreased.
-Increase the number of tasks that the given worker has applied.
-Worker whose tasks are increased.
-Removes the given worker from the pool.
-Worker that will be removed.
-Setup hook that can be overridden by a Poolifier pool implementation -to run code before workers are created in the abstract constructor.
-This function is the listener registered for each worker.
-The listener function to execute when a message is sent from a worker.
-This function is the listener registered for each worker.
-The listener function to execute when a message is sent from a worker.
-Generated using TypeDoc
Readonly
filePath to the worker file.
+Readonly
maxMaximum number of threads that can be created by this pool.
+Readonly
numberNumber of workers that this pool should manage.
+Readonly
optsOptions for the pool.
+Protected
promiseThe execution response promise map.
+key
: The message id of each submitted task.value
: An object that contains the worker, the execution response promise resolve and reject callbacks.When we receive a message from the worker, we get a map entry with the promise resolve/reject bound to the message id.
+Protected
workerWorker choice strategy context referencing a worker choice algorithm implementation.
+Default to a round robin algorithm.
+Readonly
workerPool worker nodes.
+Protected
busyWhether the pool is busy or not.
+The pool busyness boolean status.
+Protected
fullWhether the pool is full or not.
+The pool filling boolean status.
+Private
numberNumber of tasks queued in the pool.
+Private
numberNumber of tasks running in the pool.
+Protected
afterHook executed after the worker task execution. +Can be overridden.
+The worker.
+The received message.
+Protected
afterFunction that can be hooked up when a worker has been newly created and moved to the pool worker nodes.
+Can be used to update the maxListeners
or binding the main-worker
<->worker
connection if not bind by default.
The newly created worker.
+Protected
beforeProtected
chooseChooses a worker node for the next task.
+The default uses a round robin algorithm to distribute the load.
+[worker node key, worker node].
+Protected
createCreates a new worker and sets it up completely in the pool worker nodes.
+New, completely set up worker.
+Protected
createReturns a newly created worker.
+Protected
destroyShutdowns the given worker.
+A worker within workerNodes
.
Enables/disables the worker tasks queue in this pool.
+Whether to enable or disable the worker tasks queue.
+Optional
tasksQueueOptions: TasksQueueOptionsThe worker tasks queue options.
+Executes the function specified in the worker constructor with the task data input parameter.
+Optional
data: DataThe task input data for the specified worker function. This can only be serializable data.
+Promise that will be fulfilled when the task is completed.
+Protected
internalProtected
isProtected
registerRegisters a listener callback on the given worker.
+The worker which should register a listener.
+The message listener callback.
+Protected
sendSends a message to the given worker.
+The worker which should receive the message.
+The message.
+Sets the worker tasks queue options in this pool.
+The worker tasks queue options.
+Sets the worker choice strategy in this pool.
+The worker choice strategy.
+Optional
workerChoiceStrategyOptions: WorkerChoiceStrategyOptionsThe worker choice strategy options.
+Sets the worker choice strategy options in this pool.
+The worker choice strategy options.
+Protected
setupProtected
workerThis function is the listener registered for each worker message.
+The listener function to execute when a message is received from a worker.
+ +This function is the listener registered for each worker message.
+The listener function to execute when a message is received from a worker.
+Generated using TypeDoc
A thread pool with a dynamic number of threads, but a guaranteed minimum number of threads.
-This thread pool creates new threads when the others are busy, up to the maximum number of threads. -When the maximum number of threads is reached, an event is emitted. If you want to listen to this event, use the pool's
-emitter
.of data sent to the worker. This can only be serializable data.
-of response of execution. This can only be serializable data.
-Alessandro Pio Ardizio
-0.0.1
-