X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=inline;f=docs%2Fclasses%2FAbstractPool.html;h=4ffefe2c7609adaa617347ad5dbaf5c0079bc89d;hb=b22361f4474e4a63a7482741d98f0c58b4b03b4c;hp=fc48e1e3b8b729e64d2b82febe1a6ce7e1d98a23;hpb=7e0388f2750ecb9d6ecce5173066774a8ad1cc7b;p=poolifier.git diff --git a/docs/classes/AbstractPool.html b/docs/classes/AbstractPool.html index fc48e1e3..4ffefe2c 100644 --- a/docs/classes/AbstractPool.html +++ b/docs/classes/AbstractPool.html @@ -1,1343 +1,260 @@ -
Abstract
Type of worker which manages this pool.
-Type of data sent to the worker. This can only be structured-cloneable data.
-Type of execution response. This can only be structured-cloneable data.
-Abstract
Base class that implements some shared logic for all poolifier pools.
+Type of worker which manages this pool.
+Type of data sent to the worker. This can only be structured-cloneable data.
+Type of execution response. This can only be structured-cloneable data.
+Constructs a new poolifier pool.
-Number of workers that this pool should manage.
-Path to the worker file.
-Options for the pool.
-Optional
Readonly
emitterEmitter on which events can be listened to.
+workerConstructs a new poolifier pool.
+Number of workers that this pool should manage.
+Path to the worker file.
+Options for the pool.
+Optional
emitterEvent emitter integrated with async resource on which events can be listened to.
+The async tracking tooling identifier is poolifier:<PoolType>-<WorkerType>-pool
.
Events that can currently be listened to:
'full'
: Emitted when the pool is dynamic and the number of workers created has reached the maximum size expected.'ready'
: Emitted when the number of workers created in the pool has reached the minimum size expected and are ready.'busy'
: Emitted when the number of workers created in the pool has reached the maximum size expected and are executing at least one task.'busy'
: Emitted when the number of workers created in the pool has reached the maximum size expected and are executing concurrently their tasks quota.'full'
: Emitted when the pool is dynamic and the number of workers created has reached the maximum size expected.'destroy'
: Emitted when the pool is destroyed.'error'
: Emitted when an uncaught error occurs.'taskError'
: Emitted when an error occurs while executing a task.'backPressure'
: Emitted when all worker nodes have back pressure (i.e. their tasks queue is full: queue size >= maximum queue size).Protected
Readonly
filePath to the worker file.
-Protected
Readonly
numberNumber of workers that this pool should manage.
-Protected
Readonly
optsOptions for the pool.
-Protected
promiseThe execution response promise map.
+Protected
Readonly
filePath to the worker file.
+Protected
Optional
Readonly
maxDynamic pool maximum size property placeholder.
+Protected
Readonly
numberNumber of workers that this pool should manage.
+Protected
Readonly
optsOptions for the pool.
+Protected
promiseThe task 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.
-Private
Readonly
startThe start timestamp of the pool.
-Protected
workerWorker choice strategy context referencing a worker choice algorithm implementation.
-Private
Readonly
startThe start timestamp of the pool.
+Private
startedWhether the pool is started or not.
+Private
startingWhether the pool is starting or not.
+Private
Readonly
taskThe task functions added at runtime map:
Readonly
workerPool worker nodes.
-Protected
Abstract
busyWhether the pool is busy or not.
+key
: The task function name.value
: The task function itself.Protected
workerWorker choice strategy context referencing a worker choice algorithm implementation.
+Readonly
Internal
workerPool worker nodes.
+Protected
Abstract
busyWhether the pool is busy or not.
The pool busyness boolean status.
-Protected
fullWhether the pool is full or not.
+Protected
fullWhether the pool is full or not.
The pool filling boolean status.
-Protected
Abstract
maxPool maximum size.
-Protected
Abstract
minPool minimum size.
-Private
readyPrivate
startingProtected
Abstract
typePool type.
+Protected
maxThe pool maximum size.
+Protected
minThe pool minimum size.
+Private
readyThe pool readiness boolean status.
+Protected
Abstract
typeThe pool type.
If it is 'dynamic'
, it provides the max
property.
Private
utilizationGets the approximate pool utilization.
-The pool utilization.
- -Protected
Abstract
workerGets the worker type.
-Protected
afterPrivate
utilizationThe approximate pool utilization.
+The pool utilization.
+Protected
Abstract
workerThe worker type.
+Adds a task function to this pool. +If a task function with the same name already exists, it will be overwritten.
+The name of the task function.
+The task function.
+true
if the task function was added, false
otherwise.
https://nodejs.org/api/errors.html#class-typeerror If the name
parameter is not a string or an empty string.
https://nodejs.org/api/errors.html#class-typeerror If the fn
parameter is not a function.
Private
addAdds the given worker in the pool worker nodes.
+The worker.
+The added worker node key.
+https://nodejs.org/api/errors.html#class-error If the added worker node is not found.
+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. +
The worker node key.
+The received message.
+Protected
afterProtected
beforeProtected
beforeHook executed before the worker task execution. Can be overridden.
-The worker node key.
-The task to execute.
-Private
buildPrivate
checkProtected
checkPrivate
checkPrivate
checkPrivate
checkPrivate
checkPrivate
checkPrivate
checkPrivate
checkPrivate
chooseChooses a worker node for the next task.
+The worker node key.
+The task to execute.
+Private
buildPrivate
checkPrivate
checkPrivate
checkPrivate
checkChecks if the worker id sent in the received message from a worker is valid.
+The received message.
+https://nodejs.org/api/errors.html#class-error If the worker id is invalid.
+Private
checkPrivate
checkPrivate
checkPrivate
chooseProtected
createProtected
createProtected
Abstract
createPrivate
dequeueProtected
Abstract
destroyEnables/disables the worker tasks queue in this pool.
-Whether to enable or disable the worker tasks queue.
-Optional
tasksQueueOptions: TasksQueueOptionsThe worker tasks queue options.
-Private
enqueueExecutes the specified function 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 structured-cloneable data.
-Optional
name: stringThe name of the worker function to execute. If not specified, the default worker function will be executed.
-Promise that will be fulfilled when the task is completed.
- -Private
executePrivate
flushPrivate
flushPrivate
getPrivate
getGets the worker information.
-The worker node key.
-Private
getPrivate
handlePrivate
handleProtected
internalProtected
Abstract
isPrivate
pushPrivate
redistributePrivate
registerRegisters a listener callback on the given worker.
-The worker which should register a listener.
-The message listener callback.
-Private
removeProtected
Abstract
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.
-Private
setProtected
setupProtected
createProtected
createProtected
Abstract
createPrivate
deletePrivate
dequeueProtected
Abstract
deregisterDeregisters a listener callback on the worker given its worker node key.
+The worker node key.
+The message listener callback.
+Protected
Abstract
destroyEnables/disables the worker node tasks queue in this pool.
+Whether to enable or disable the worker node tasks queue.
+Optional
tasksQueueOptions: TasksQueueOptionsThe worker node tasks queue options.
+Private
enqueueExecutes the specified function in the worker constructor with the task data input parameter.
+Optional
data: DataThe optional task input data for the specified task function. This can only be structured-cloneable data.
+Optional
name: stringThe optional name of the task function to execute. If not specified, the default task function will be executed.
+Optional
transferList: TransferListItem[]An optional array of transferable objects to transfer ownership of. Ownership of the transferred objects is given to the pool's worker_threads worker and they should not be used in the main thread afterwards.
+Promise that will be fulfilled when the task is completed.
+Private
executeExecutes the given task on the worker given its worker node key.
+The worker node key.
+The task to execute.
+Protected
flagProtected
flushPrivate
flushProtected
getGets the worker information given its worker node key.
+The worker node key.
+The worker information.
+Private
getPrivate
getPrivate
Readonly
handlePrivate
Readonly
handlePrivate
handlePrivate
handlePrivate
hasPrivate
initializeProtected
internalProtected
Abstract
isPrivate
redistributeProtected
Abstract
registerRegisters once a listener callback on the worker given its worker node key.
+The worker node key.
+The message listener callback.
+Protected
Abstract
registerRegisters a listener callback on the worker given its worker node key.
+The worker node key.
+The message listener callback.
+Private
removeProtected
sendProtected
Abstract
sendPrivate
sendPrivate
sendPrivate
sendProtected
Abstract
sendSends a message to worker given its worker node key.
+The worker node key.
+The message.
+Optional
transferList: TransferListItem[]The optional array of transferable objects.
+Private
setSets the worker node tasks queue options in this pool.
+The worker node tasks queue options.
+Private
setPrivate
setSets 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
setupPrivate
shallPrivate
tasksPrivate
updatePrivate
updatePrivate
updatePrivate
updateProtected
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
Private
shallPrivate
shallPrivate
shallPrivate
tasksPrivate
unsetPrivate
unsetPrivate
updatePrivate
updatePrivate
updatePrivate
updatePrivate
updateProtected
workerThis method is the message listener registered on each worker.
+Generated using TypeDoc
Base class that implements some shared logic for all poolifier pools.
-