X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Fclasses%2FAbstractPool.html;h=23d24db211d348ae5695daad7e6c351dfa07daea;hb=31a42de7d691911759e12a673e5a2153f5558ed8;hp=bcf1047c5bb6d677bb5490f6171d2892b80a92b7;hpb=fcb83cac5406186d9646362d0f3f97db339012d9;p=poolifier.git diff --git a/docs/classes/AbstractPool.html b/docs/classes/AbstractPool.html index bcf1047c..23d24db2 100644 --- a/docs/classes/AbstractPool.html +++ b/docs/classes/AbstractPool.html @@ -1,8 +1,8 @@ -
Abstract
Base class that implements some shared logic for all poolifier pools.
+- Preparing search index...
- The search index is not available
poolifier - v4.0.15Class AbstractPool<Worker, Data, Response>
Abstract
Base class that implements some shared logic for all poolifier pools.
Type Parameters
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.
-Hierarchy (view full)
Implements
Index
Constructors
Hierarchy (view full)
Implements
Index
Constructors
Properties
Path to the worker file.
Options for the pool.
Optional
maximumNumberOfWorkers: numberMaximum number of workers that this pool manages.
-Returns AbstractPool<Worker, Data, Response>
Properties
Private
destroyingWhether the pool is destroying or not.
-Optional
emitterPool event emitter integrated with async resource. +
Returns AbstractPool<Worker, Data, Response>
Properties
Private
destroyingWhether the pool is destroying or not.
+Optional
emitterPool event emitter integrated with async resource. The async tracking tooling identifier is
poolifier:<PoolType>-<WorkerType>-pool
.Events that can currently be listened to:
@@ -130,124 +131,130 @@ The async tracking tooling identifier is
-poolifier:<PoolType>-<Wo
'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
Optional
Readonly
maximumMaximum number of workers that this pool manages.
-Protected
Readonly
minimumMinimum number of workers that this pool manages.
-Protected
Readonly
optsOptions for the pool.
-Protected
promiseThe task execution response promise map:
+Protected
Readonly
filePath to the worker file.
+Protected
Optional
Readonly
maximumMaximum number of workers that this pool manages.
+Protected
Readonly
minimumMinimum number of workers that this pool manages.
+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 task's worker node key, execution response promise resolve and reject callbacks, async resource.When we receive a message from the worker, we get a map entry with the promise resolve/reject bound to the message id.
-Private
readyWhether the pool ready event has been emitted or not.
-Private
Optional
startThe start timestamp of the pool.
-Private
startedWhether the pool is started or not.
-Private
startingWhether the pool is starting or not.
-Private
startingWhether the minimum number of workers is starting or not.
-Private
Readonly
taskThe task functions added at runtime map:
+Private
readyWhether the pool ready event has been emitted or not.
+Private
Optional
startThe start timestamp of the pool.
+Private
startedWhether the pool is started or not.
+Private
startingWhether the pool is starting or not.
+Private
startingWhether the minimum number of workers is starting or not.
+Private
Readonly
taskThe task functions added at runtime map:
key
: The task function name.value
: The task function object.Protected
Optional
workerWorker choice strategies context referencing worker choice algorithms implementation.
-Readonly
Internal
workerPool worker nodes.
-Accessors
Protected
Abstract
busyWhether the pool is busy or not.
-The pool busyness boolean status.
-Returns boolean
Protected
emptyThe pool emptiness boolean status.
-Returns boolean
Protected
fullWhether the pool is full or not.
-The pool filling boolean status.
-Returns boolean
info
Pool information.
-Returns PoolInfo
Private
readyThe pool readiness boolean status.
-Returns boolean
Protected
Abstract
typeThe pool type.
+Protected
Optional
workerWorker choice strategies context referencing worker choice algorithms implementation.
+Readonly
Internal
workerPool worker nodes.
+Accessors
Protected
Abstract
busyWhether the pool is busy or not.
+Returns boolean
The pool busyness boolean status.
+Protected
emptyWhether the pool is empty or not.
+Returns boolean
The pool emptiness boolean status.
+Protected
fullWhether the pool is full or not.
+Returns boolean
The pool fullness boolean status.
+info
Pool information.
+Returns PoolInfo
Private
readyWhether the pool is ready or not.
+Returns boolean
The pool readiness boolean status.
+Protected
Abstract
typeThe pool type.
If it is
-'dynamic'
, it provides themax
property.Returns "fixed" | "dynamic"
Private
utilizationThe approximate pool utilization.
+Returns "fixed" | "dynamic"
Private
utilizationThe approximate pool utilization.
Returns number
The pool utilization.
-Protected
Abstract
workerThe worker type.
-Returns "thread" | "cluster"
Methods
add Task Function
Parameters
Returns Promise<boolean>
Inherit Doc
Private
addAdds the given worker node in the pool worker nodes.
+Protected
Abstract
workerThe worker type.
+Returns "thread" | "cluster"
Methods
add Task Function
Parameters
Returns Promise<boolean>
Inherit Doc
Private
addAdds the given worker node in the pool worker nodes.
Parameters
The worker node.
Returns number
The added worker node key.
Throws
https://nodejs.org/api/errors.html#class-error If the added worker node is not found.
-Protected
afterHook executed after the worker task execution. +
Protected
afterHook executed after the worker task execution. Can be overridden.
Parameters
The worker node key.
The received message.
-Returns void
Protected
afterMethod hooked up after a worker node has been newly created. +
Returns void
Protected
afterMethod hooked up after a worker node has been newly created. Can be overridden.
Parameters
The newly created worker node key.
-Returns void
Protected
beforeHook executed before the worker task execution. +
Returns void
Protected
beforeHook executed before the worker task execution. Can be overridden.
Parameters
The worker node key.
The task to execute.
-Returns void
Private
buildParameters
Returns TasksQueueOptions
Private
cannotReturns boolean
Protected
Abstract
checkEmits dynamic worker creation events.
-Returns void
Private
checkReturns void
Private
checkReturns void
Private
checkReturns void
Private
checkReturns void
Private
checkChecks if the worker id sent in the received message from a worker is valid.
+Returns void
Private
buildParameters
Returns TasksQueueOptions
Private
cannotReturns boolean
Protected
Abstract
checkEmits dynamic worker creation events.
+Returns void
Private
checkReturns void
Private
checkReturns void
Private
checkReturns void
Private
checkReturns void
Private
checkChecks if the worker id sent in the received message from a worker is valid.
Parameters
The received message.
Returns void
Throws
https://nodejs.org/api/errors.html#class-error If the worker id is invalid.
-Private
checkParameters
Returns void
Private
checkParameters
Returns void
Private
checkReturns void
Private
checkParameters
Returns void
Private
chooseChooses a worker node for the next task.
+Private
checkParameters
Returns void
Private
checkParameters
Returns void
Private
checkReturns void
Private
checkParameters
Returns void
Private
chooseChooses a worker node for the next task.
Parameters
Optional
name: stringThe task function name.
Returns number
The chosen worker node key.
-Protected
createCreates a new, completely set up dynamic worker node.
+Protected
createCreates a new, completely set up dynamic worker node.
Returns number
New, completely set up dynamic worker node key.
-Protected
createCreates a new, completely set up worker node.
+Protected
createCreates a new, completely set up worker node.
Returns number
New, completely set up worker node key.
-Private
createCreates a worker node.
+Private
createCreates a worker node.
Returns IWorkerNode<Worker, Data>
The created worker node.
-Private
dequeueParameters
Returns undefined | Task<Data>
Protected
Abstract
deregisterDeregisters a listener callback on the worker given its worker node key.
+Private
dequeueParameters
Returns undefined | Task<Data>
Protected
Abstract
deregisterDeregisters a listener callback on the worker given its worker node key.
Type Parameters
Parameters
The worker node key.
The message listener callback.
-Parameters
Returns void
Returns void
destroy
Returns Promise<void>
Inherit Doc
Protected
destroyTerminates the worker node given its worker node key.
+Parameters
Returns void
Returns void
destroy
Returns Promise<void>
Inherit Doc
Protected
destroyTerminates the worker node given its worker node key.
Parameters
The worker node key.
-Returns Promise<void>
enable Tasks Queue
Parameters
Optional
tasksQueueOptions: TasksQueueOptionsReturns void
Inherit Doc
Private
enqueueParameters
Returns number
execute
Parameters
Optional
data: DataOptional
name: stringOptional
transferList: readonly TransferListItem[]Returns Promise<Response>
Inherit Doc
Private
executeExecutes the given task on the worker given its worker node key.
+Returns Promise<void>
enable Tasks Queue
Parameters
Optional
tasksQueueOptions: TasksQueueOptionsReturns void
Inherit Doc
Private
enqueueParameters
Returns number
execute
Parameters
Optional
data: DataOptional
name: stringOptional
transferList: readonly TransferListItem[]Returns Promise<Response>
Inherit Doc
Private
executeExecutes the given task on the worker given its worker node key.
Parameters
The worker node key.
The task to execute.
-Returns void
Protected
flagParameters
Returns void
Protected
flushParameters
Returns number
Private
flushReturns void
Private
Readonly
getGets task function worker choice strategy, if any.
+Returns void
Protected
flagParameters
Returns void
Protected
flushParameters
Returns number
Private
flushReturns void
Private
Readonly
getGets task function worker choice strategy, if any.
Parameters
Optional
name: stringThe task function name.
Returns undefined | "ROUND_ROBIN" | "LEAST_USED" | "LEAST_BUSY" | "LEAST_ELU" | "FAIR_SHARE" | "WEIGHTED_ROUND_ROBIN" | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
The task function worker choice strategy if the task function worker choice strategy is defined,
-undefined
otherwise.Private
getReturns boolean
Private
Readonly
getGets the worker choice strategies registered in this pool.
+Private
getReturns boolean
Private
Readonly
getGets the worker choice strategies registered in this pool.
Returns Set<"ROUND_ROBIN" | "LEAST_USED" | "LEAST_BUSY" | "LEAST_ELU" | "FAIR_SHARE" | "WEIGHTED_ROUND_ROBIN" | "INTERLEAVED_WEIGHTED_ROUND_ROBIN">
The worker choice strategies.
-Protected
getGets the worker information given its worker node key.
+Protected
getGets the worker information given its worker node key.
Parameters
The worker node key.
Returns undefined | WorkerInfo
The worker information.
-Private
getGets the worker node key given its worker id.
+Private
getGets the worker node key given its worker id.
Parameters
The worker id.
Returns number
The worker node key if the worker id is found in the pool worker nodes,
--1
otherwise.Private
Readonly
getGets worker node task function priority, if any.
+Private
Readonly
getGets worker node task function priority, if any.
Parameters
The worker node key.
Optional
name: stringThe task function name.
Returns undefined | number
The worker node task function priority if the worker node task function priority is defined,
-undefined
otherwise.Private
Readonly
getGets worker node task function worker choice strategy, if any.
+Private
Readonly
getGets worker node task function worker choice strategy, if any.
Parameters
The worker node key.
Optional
name: stringThe task function name.
Returns undefined | "ROUND_ROBIN" | "LEAST_USED" | "LEAST_BUSY" | "LEAST_ELU" | "FAIR_SHARE" | "WEIGHTED_ROUND_ROBIN" | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
The worker node task function worker choice strategy if the worker node task function worker choice strategy is defined,
-undefined
otherwise.Private
handleParameters
Returns void
Private
handleParameters
Returns void
Private
Readonly
handleParameters
Returns void
Private
Readonly
handleParameters
Optional
previousStolenTask: Task<Data>Returns void
Private
handleParameters
Returns void
Private
hasReturns boolean
has Task Function
Parameters
Returns boolean
Inherit Doc
Private
initReturns void
Private
initInitializes the worker node usage with sensible default values gathered during runtime.
+Private
handleParameters
Returns void
Private
handleParameters
Returns void
Private
Readonly
handleParameters
Returns void
Private
Readonly
handleParameters
Optional
previousStolenTask: Task<Data>Returns void
Private
handleParameters
Returns void
Private
hasReturns boolean
has Task Function
Parameters
Returns boolean
Inherit Doc
Private
initReturns void
Private
initInitializes the worker node usage with sensible default values gathered during runtime.
Parameters
The worker node.
-Returns void
Protected
internalWhether worker nodes are executing concurrently their tasks quota or not.
+Returns void
Protected
internalWhether worker nodes are executing concurrently their tasks quota or not.
Returns boolean
Worker nodes busyness boolean status.
-Protected
Abstract
isReturns whether the worker is the main worker or not.
+Protected
Abstract
isReturns whether the worker is the main worker or not.
Returns boolean
-true
if the worker is the main worker,false
otherwise.Private
isParameters
Returns boolean
list Task Functions Properties
Returns TaskFunctionProperties[]
Inherit Doc
Private
redistributeParameters
Returns void
Protected
Abstract
registerRegisters once a listener callback on the worker given its worker node key.
+Private
isParameters
Returns boolean
list Task Functions Properties
Returns TaskFunctionProperties[]
Inherit Doc
map Execute
Parameters
Optional
name: stringOptional
transferList: readonly TransferListItem[]Returns Promise<Response[]>
Inherit Doc
Private
redistributeParameters
Returns void
Protected
Abstract
registerRegisters once a listener callback on the worker given its worker node key.
Type Parameters
Parameters
The worker node key.
The message listener callback.
-Parameters
Returns void
Returns void
Protected
Abstract
registerRegisters a listener callback on the worker given its worker node key.
+Parameters
Returns void
Returns void
Protected
Abstract
registerRegisters a listener callback on the worker given its worker node key.
Type Parameters
Parameters
The worker node key.
The message listener callback.
-Parameters
Returns void
Returns void
remove Task Function
Parameters
Returns Promise<boolean>
Inherit Doc
Private
removeRemoves the worker node from the pool worker nodes.
+Parameters
Returns void
Returns void
remove Task Function
Parameters
Returns Promise<boolean>
Inherit Doc
Private
removeRemoves the worker node from the pool worker nodes.
Parameters
The worker node.
-Returns void
Private
resetParameters
Returns void
Private
sendParameters
Returns Promise<void>
Protected
Abstract
sendSends the startup message to worker given its worker node key.
+Returns void
Private
resetParameters
Returns void
Private
sendParameters
Returns Promise<void>
Protected
Abstract
sendSends the startup message to worker given its worker node key.
Parameters
The worker node key.
-Returns void
Private
sendSends the statistics message to worker given its worker node key.
+Returns void
Private
sendSends the statistics message to worker given its worker node key.
Parameters
The worker node key.
-Returns void
Private
sendParameters
Returns Promise<boolean>
Private
sendParameters
Returns Promise<boolean>
Protected
Abstract
sendSends a message to worker given its worker node key.
+Returns void
Private
sendParameters
Returns Promise<boolean>
Private
sendParameters
Returns Promise<boolean>
Protected
Abstract
sendSends a message to worker given its worker node key.
Parameters
The worker node key.
The message.
Optional
transferList: readonly TransferListItem[]The optional array of transferable objects.
-Returns void
set Default Task Function
Parameters
Returns Promise<boolean>
Inherit Doc
Private
setReturns void
set Tasks Queue Options
Parameters
Returns void
Inherit Doc
Private
setParameters
Returns void
Private
setParameters
Returns void
Private
setReturns void
set Worker Choice Strategy
Parameters
Optional
workerChoiceStrategyOptions: WorkerChoiceStrategyOptionsReturns void
Inherit Doc
set Worker Choice Strategy Options
Parameters
Returns boolean
Inherit Doc
Protected
setupSetup hook to execute code before worker nodes are created in the abstract constructor. +
Returns void
set Default Task Function
Parameters
Returns Promise<boolean>
Inherit Doc
Private
setReturns void
set Tasks Queue Options
Parameters
Returns void
Inherit Doc
Private
setParameters
Returns void
Private
setParameters
Returns void
Private
setReturns void
set Worker Choice Strategy
Parameters
Optional
workerChoiceStrategyOptions: WorkerChoiceStrategyOptionsReturns void
Inherit Doc
set Worker Choice Strategy Options
Parameters
Returns boolean
Inherit Doc
Protected
setupSetup hook to execute code before worker nodes are created in the abstract constructor. Can be overridden.
-Returns void
Protected
Abstract
shallConditions for dynamic worker creation.
+Returns void
Protected
Abstract
shallConditions for dynamic worker creation.
Returns boolean
Whether to create a dynamic worker or not.
-Private
shallParameters
Returns boolean
Private
shallWhether the worker node shall update its task function worker usage or not.
+Private
shallParameters
Returns boolean
Private
shallWhether the worker node shall update its task function worker usage or not.
Parameters
The worker node key.
Returns boolean
-true
if the worker node shall update its task function worker usage,false
otherwise.start
Returns void
Inherit Doc
Private
startStarts the minimum number of workers.
-Parameters
Returns void
Private
tasksParameters
Returns number
Private
unsetReturns void
Private
unsetReturns void
Private
updateParameters
Optional
previousTaskName: stringReturns void
Private
updateParameters
Returns void
Protected
Readonly
workerThis method is the message listener registered on each worker.
-Parameters
Returns void
Private
Readonly
workerParameters
Returns undefined | Task<Data>
Settings
Member Visibility
Theme
On This Page
start
Returns void
Inherit Doc
Private
startStarts the minimum number of workers.
+Parameters
Whether to initialize the worker node usage or not.
+Returns void
Default Value
+Private
tasksParameters
Returns number
Private
unsetReturns void
Private
unsetReturns void
Private
updateParameters
Optional
previousTaskName: stringReturns void
Private
updateParameters
Returns void
Protected
Readonly
workerThis method is the message listener registered on each worker.
+Parameters
The message received from the worker.
+Returns void
Private
Readonly
workerParameters
Returns undefined | Task<Data>
Settings
Member Visibility
Theme
On This Page