X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Fclasses%2FFixedThreadPool.html;h=1836da110382c4470026ee64325e36d2676c6b9a;hb=1cc6e9ef64f399f4ca58da8079ef72a011ac4227;hp=b8b8bed349e41aaa607df34c3d98a569d456164c;hpb=79458fb6e10234a237757111e710f8f71424fa06;p=poolifier.git diff --git a/docs/classes/FixedThreadPool.html b/docs/classes/FixedThreadPool.html index b8b8bed3..1836da11 100644 --- a/docs/classes/FixedThreadPool.html +++ b/docs/classes/FixedThreadPool.html @@ -1,15 +1,15 @@ -
Type of data sent to the worker. This can only be serializable data.
-Type of data sent to the worker. This can only be structured-cloneable data.
+Type of response of execution. This can only be serializable data.
-Type of execution response. This can only be structured-cloneable data.
+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.
Options for this fixed thread pool.
-Overrides AbstractPool<ThreadWorkerWithMessageChannel, Data, Response>.constructor
+Overrides AbstractPool.constructor
Optional
Readonly
emitter{@inheritDoc}
-Inherited from AbstractPool.emitter
+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:
Readonly
filePath to the worker-file.
-Inherited from AbstractPool.filePath
+'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 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).Inherited from AbstractPool.emitter
+Protected
Readonly
filePath to the worker file.
+Inherited from AbstractPool.filePath
+Protected
Optional
Readonly
maxDynamic pool maximum size property placeholder.
+Inherited from AbstractPool.max
Readonly
numberProtected
Readonly
numberNumber of workers that this pool should manage.
-Inherited from AbstractPool.numberOfWorkers
+Inherited from AbstractPool.numberOfWorkers
Readonly
optsOptions for the pool.
-Inherited from AbstractPool.opts
+Protected
Readonly
optsOptions for this fixed thread pool.
+Inherited from AbstractPool.opts
Protected
promiseThe promise response map.
+Protected
promiseThe task execution response promise map:
key
: The message id of each submitted task.value
: An object that contains the worker, the promise resolve and reject callbacks.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.
-Inherited from AbstractPool.promiseResponseMap
-Protected
workerWorker choice strategy instance implementing the worker choice algorithm.
-Default to a strategy implementing a round robin algorithm.
-Inherited from AbstractPool.workerChoiceStrategyContext
+When we receive a message from the worker, we get a map entry with the promise resolve/reject bound to the message id.
+Inherited from AbstractPool.promiseResponseMap
Readonly
workers{@inheritDoc}
-Inherited from AbstractPool.workers
+Protected
workerWorker choice strategy context referencing a worker choice algorithm implementation.
+Inherited from AbstractPool.workerChoiceStrategyContext
Readonly
Internal
workerPool worker nodes.
+Inherited from AbstractPool.workerNodes
+Protected
busy{@inheritDoc}
+Whether the pool is busy or not.
+The pool busyness boolean status.
Overrides AbstractPool.busy
Protected
fullWhether the pool is full or not.
+The pool filling boolean status.
+Inherited from AbstractPool.full
+Pool information.
+Inherited from AbstractPool.info
+Protected
maxThe pool maximum size.
+Inherited from AbstractPool.maxSize
+Protected
minThe pool minimum size.
+Inherited from AbstractPool.minSize
+Private
ready{@inheritDoc}
+The pool readiness boolean status.
Inherited from AbstractPool.numberOfRunningTasks
+Inherited from AbstractPool.ready
Protected
type{@inheritDoc}
+The pool type.
+If it is 'dynamic'
, it provides the max
property.
Overrides AbstractPool.type
Private
utilizationThe approximate pool utilization.
+The pool utilization.
+ +Inherited from AbstractPool.utilization
+Protected
workerThe worker type.
+Overrides AbstractPool.worker
+Protected
afterAdds 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.
Inherited from AbstractPool.addTaskFunction
+Protected
afterHook executed after the worker task promise resolution. +
Hook executed after the worker task execution. Can be overridden.
The worker.
-The worker node key.
+The received message.
-Inherited from AbstractPool.afterPromiseResponseHook
+Inherited from AbstractPool.afterTaskExecutionHook
Protected
afterProtected
after{@inheritDoc}
+Method hooked up after a worker node has been newly created. +Can be overridden.
Overrides AbstractPool.afterWorkerSetup
+The newly created worker node key.
+Inherited from AbstractPool.afterWorkerNodeSetup
Protected
beforeProtected
beforeHook executed before the worker task promise resolution. +
Hook executed before the worker task execution. Can be overridden.
The worker key.
-Inherited from AbstractPool.beforePromiseResponseHook
+The worker node key.
+The task to execute.
+Inherited from AbstractPool.beforeTaskExecutionHook
Protected
chooseProtected
createChooses a worker for the next task.
-The default implementation uses a round robin algorithm to distribute the load.
+Creates a new, completely set up dynamic worker node.
+New, completely set up dynamic worker node key.
-[worker key, worker].
+Inherited from AbstractPool.createAndSetupDynamicWorkerNode
+Protected
createCreates a new, completely set up worker node.
Inherited from AbstractPool.chooseWorker
+New, completely set up worker node key.
+ +Inherited from AbstractPool.createAndSetupWorkerNode
Protected
createProtected
createCreates a new worker for this pool and sets it up completely.
+Creates a new worker.
+Newly created worker.
-New, completely set up worker.
+Overrides AbstractPool.createWorker
+Protected
deregisterDeregisters a listener callback on the worker given its worker node key.
+The worker node key.
+The message listener callback.
+Overrides AbstractPool.deregisterWorkerMessageListener
+Terminates all workers in this pool.
+Inherited from AbstractPool.destroy
+Protected
destroyTerminates the worker node given its worker node key.
Inherited from AbstractPool.createAndSetupWorker
+The worker node key.
+Overrides AbstractPool.destroyWorkerNode
Protected
create{@inheritDoc}
+Enables/disables the worker node tasks queue in this pool.
+Whether to enable or disable the worker node tasks queue.
Overrides AbstractPool.createWorker
+Optional
tasksQueueOptions: TasksQueueOptionsThe worker node tasks queue options.
+Inherited from AbstractPool.enableTasksQueue
{@inheritDoc}
+Executes 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.
Inherited from AbstractPool.destroy
+Promise that will be fulfilled when the task is completed.
+ +Inherited from AbstractPool.execute
+Protected
flushInherited from AbstractPool.flushTasksQueue
Protected
get{@inheritDoc}
+Gets the worker information given its worker node key.
Overrides AbstractPool.destroyWorker
+The worker node key.
+The worker information.
+ +Inherited from AbstractPool.getWorkerInfo
{@inheritDoc}
+Whether the specified task function exists in this pool.
+The name of the task function.
+true
if the task function exists, false
otherwise.
Inherited from AbstractPool.hasTaskFunction
+true
if the worker node has back pressure, false
otherwise.
Inherited from AbstractPool.hasWorkerNodeBackPressure
Protected
internal{@inheritDoc}
+Whether worker nodes are executing concurrently their tasks quota or not.
Inherited from AbstractPool.findFreeWorkerKey
+Worker nodes busyness boolean status.
+ +Inherited from AbstractPool.internalBusy
Protected
internalProtected
isInherited from AbstractPool.internalGetBusyStatus
+Should return whether the worker is the main worker or not.
+Overrides AbstractPool.isMain
Protected
is{@inheritDoc}
+Lists the names of task function available in this pool.
Overrides AbstractPool.isMain
+The names of task function available in this pool.
+ +Inherited from AbstractPool.listTaskFunctionNames
Protected
register{@inheritDoc}
+Registers once a listener callback on the worker given its worker node key.
The worker node key.
+The message listener callback.
+Overrides AbstractPool.registerWorkerMessageListener
+Overrides AbstractPool.registerOnceWorkerMessageListener
Protected
removeProtected
registerRemoves the given worker from the pool.
+Registers a listener callback on the worker given its worker node key.
The worker that will be removed.
-Inherited from AbstractPool.removeWorker
+The worker node key.
+The message listener callback.
+Overrides AbstractPool.registerWorkerMessageListener
Protected
send{@inheritDoc}
+Removes a task function from this pool.
The name of the task function.
+true
if the task function was removed, false
otherwise.
Inherited from AbstractPool.removeTaskFunction
+Protected
sendInherited from AbstractPool.sendKillMessageToWorker
Protected
send{@inheritDoc}
+Sends the startup message to worker given its worker node key.
Inherited from AbstractPool.setWorkerChoiceStrategy
+The worker node key.
+Overrides AbstractPool.sendStartupMessageToWorker
Protected
setupProtected
sendSetup hook that can be overridden by a Poolifier pool implementation -to run code before workers are created in the abstract constructor.
+Sends a message to worker given its worker node key.
Inherited from AbstractPool.setupHook
+The worker node key.
+The message.
+Optional
transferList: TransferListItem[]The optional array of transferable objects.
+Overrides AbstractPool.sendToWorker
Protected
workerThis function is the listener registered for each worker.
+Sets the default task function in this pool.
+The name of the task function.
+true
if the default task function was set, false
otherwise.
The listener function to execute when a message is received from a worker.
+Inherited from AbstractPool.setDefaultTaskFunction
+Sets the worker node tasks queue options in this pool.
+The worker node tasks queue options.
+Inherited from AbstractPool.setTasksQueueOptions
+Sets the worker choice strategy in this pool.
The worker choice strategy.
+Optional
workerChoiceStrategyOptions: WorkerChoiceStrategyOptionsThe worker choice strategy options.
+Inherited from AbstractPool.setWorkerChoiceStrategy
+Sets the worker choice strategy options in this pool.
+The worker choice strategy options.
+Inherited from AbstractPool.setWorkerChoiceStrategyOptions
+Protected
setupSetup hook to execute code before worker nodes are created in the abstract constructor. +Can be overridden.
+Inherited from AbstractPool.setupHook
+Starts the minimum number of workers in this pool.
+Inherited from AbstractPool.start
+Protected
workerThis method 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.
- -The listener function to execute when a message is received from a worker.
+This method is the listener registered for each worker message.
Inherited from AbstractPool.workerListener
+The listener function to execute when a message is received from a worker.
+ +Inherited from AbstractPool.workerListener
Generated using TypeDoc
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.
- -Author
Alessandro Pio Ardizio
+Author
Alessandro Pio Ardizio
-Since
0.0.1
+Since
0.0.1