X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=sidebyside;f=docs%2Finterfaces%2FIPool.html;h=467df5ca6e9726e7ed57b27986643bda443b2a55;hb=3dcc95e54a6bfeb4b27460d60d3c90d27ac352dd;hp=356689c979e7180094bd77a5ac1eb6d7e4233d90;hpb=627fc572465ba2113cbf3df6bd055c3242ecd0fe;p=poolifier.git diff --git a/docs/interfaces/IPool.html b/docs/interfaces/IPool.html index 356689c9..467df5ca 100644 --- a/docs/interfaces/IPool.html +++ b/docs/interfaces/IPool.html @@ -1,8 +1,8 @@ -IPool | poolifier - v4.0.15

Interface IPool<Worker, Data, Response>

Contract definition for a poolifier pool.

-
interface IPool<Worker, Data, Response> {
    addTaskFunction: ((name, fn) => Promise<boolean>);
    destroy: (() => Promise<void>);
    emitter?: EventEmitterAsyncResource;
    enableTasksQueue: ((enable, tasksQueueOptions?) => void);
    execute: ((data?, name?, transferList?) => Promise<Response>);
    hasTaskFunction: ((name) => boolean);
    info: PoolInfo;
    listTaskFunctionsProperties: (() => TaskFunctionProperties[]);
    mapExecute: ((data, name?, transferList?) => Promise<Response[]>);
    removeTaskFunction: ((name) => Promise<boolean>);
    setDefaultTaskFunction: ((name) => Promise<boolean>);
    setTasksQueueOptions: ((tasksQueueOptions) => void);
    setWorkerChoiceStrategy: ((workerChoiceStrategy, workerChoiceStrategyOptions?) => void);
    setWorkerChoiceStrategyOptions: ((workerChoiceStrategyOptions) => boolean);
    start: (() => void);
    workerNodes: IWorkerNode<Worker, Data>[];
}

Type Parameters

Implemented by

Properties

addTaskFunction: ((name, fn) => Promise<boolean>)

Adds a task function to this pool. +

Properties

addTaskFunction: ((name: string, fn: TaskFunction<Data, Response> | TaskFunctionObject<Data, Response>) => Promise<boolean>)

Adds a task function to this pool. If a task function with the same name already exists, it will be overwritten.

Type declaration

Returns

true if the task function was added, false otherwise.

-

Throws

https://nodejs.org/api/errors.html#class-typeerror If the name parameter is not a string or an empty string.

-

Throws

https://nodejs.org/api/errors.html#class-typeerror If the fn parameter is not a function or task function object.

-
destroy: (() => Promise<void>)

Terminates all workers in this pool.

-

Type declaration

    • (): Promise<void>
    • Returns Promise<void>

emitter?: EventEmitterAsyncResource

Pool event emitter integrated with async resource. +

Returns Promise<boolean>

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 or task function object.

+
destroy: (() => Promise<void>)

Terminates all workers in this pool.

+
emitter?: EventEmitterAsyncResource

Pool event emitter integrated with async resource. The async tracking tooling identifier is poolifier:<PoolType>-<WorkerType>-pool.

Events that can currently be listened to:

-
enableTasksQueue: ((enable, tasksQueueOptions?) => void)

Enables/disables the worker node tasks queue in this pool.

+
enableTasksQueue: ((enable: boolean, tasksQueueOptions?: TasksQueueOptions) => void)

Enables/disables the worker node tasks queue in this pool.

Type declaration

execute: ((data?, name?, transferList?) => Promise<Response>)

Executes the specified function in the worker constructor with the task data input parameter.

-

Type declaration

Returns

Promise with a task function response that will be fulfilled when the task is completed.

-
hasTaskFunction: ((name) => boolean)

Whether the specified task function exists in this pool.

+
  • OptionaltasksQueueOptions: TasksQueueOptions

    The worker node tasks queue options.

    +
  • Returns void

    execute: ((data?: Data, name?: string, transferList?: readonly TransferListItem[]) => Promise<Response>)

    Executes the specified function in the worker constructor with the task data input parameter.

    +

    Type declaration

    hasTaskFunction: ((name: string) => boolean)

    Whether the specified task function exists in this pool.

    Type declaration

    Returns

    true if the task function exists, false otherwise.

    -
    info: PoolInfo

    Pool information.

    -
    listTaskFunctionsProperties: (() => TaskFunctionProperties[])

    Lists the properties of task functions available in this pool.

    -

    Type declaration

    Returns

    The properties of task functions available in this pool.

    -
    mapExecute: ((data, name?, transferList?) => Promise<Response[]>)

    Executes the specified function in the worker constructor with the tasks data iterable input parameter.

    +

    Returns boolean

    true if the task function exists, false otherwise.

    +
    info: PoolInfo

    Pool information.

    +
    listTaskFunctionsProperties: (() => TaskFunctionProperties[])

    Lists the properties of task functions available in this pool.

    +

    Type declaration

    mapExecute: ((data: Iterable<Data>, name?: string, transferList?: readonly TransferListItem[]) => Promise<Response[]>)

    Executes the specified function in the worker constructor with the tasks data iterable input parameter.

    Type declaration

    Returns

    Promise with an array of task function responses that will be fulfilled when the tasks are completed.

    -
    removeTaskFunction: ((name) => Promise<boolean>)

    Removes a task function from this pool.

    +
  • Optionalname: string

    The optional name of the task function to execute. If not specified, the default task function will be executed.

    +
  • OptionaltransferList: readonly TransferListItem[]

    An optional array of transferable objects to transfer ownership of. Ownership of the transferred objects is given to the chosen pool's worker_threads worker and they should not be used in the main thread afterwards.

    +
  • Returns Promise<Response[]>

    Promise with an array of task function responses that will be fulfilled when the tasks are completed.

    +
    removeTaskFunction: ((name: string) => Promise<boolean>)

    Removes a task function from this pool.

    Type declaration

    Returns

    true if the task function was removed, false otherwise.

    -
    setDefaultTaskFunction: ((name) => Promise<boolean>)

    Sets the default task function in this pool.

    +

    Returns Promise<boolean>

    true if the task function was removed, false otherwise.

    +
    setDefaultTaskFunction: ((name: string) => Promise<boolean>)

    Sets the default task function in this pool.

    Type declaration

    Returns

    true if the default task function was set, false otherwise.

    -
    setTasksQueueOptions: ((tasksQueueOptions) => void)

    Sets the worker node tasks queue options in this pool.

    +

    Returns Promise<boolean>

    true if the default task function was set, false otherwise.

    +
    setTasksQueueOptions: ((tasksQueueOptions: TasksQueueOptions) => void)

    Sets the worker node tasks queue options in this pool.

    Type declaration

    setWorkerChoiceStrategy: ((workerChoiceStrategy, workerChoiceStrategyOptions?) => void)

    Sets the default worker choice strategy in this pool.

    -

    Type declaration

    setWorkerChoiceStrategyOptions: ((workerChoiceStrategyOptions) => boolean)

    Sets the worker choice strategy options in this pool.

    +

    Returns void

    setWorkerChoiceStrategy: ((workerChoiceStrategy:
        | "ROUND_ROBIN"
        | "LEAST_USED"
        | "LEAST_BUSY"
        | "LEAST_ELU"
        | "FAIR_SHARE"
        | "WEIGHTED_ROUND_ROBIN"
        | "INTERLEAVED_WEIGHTED_ROUND_ROBIN", workerChoiceStrategyOptions?: WorkerChoiceStrategyOptions) => void)

    Sets the default worker choice strategy in this pool.

    +

    Type declaration

    setWorkerChoiceStrategyOptions: ((workerChoiceStrategyOptions: WorkerChoiceStrategyOptions) => boolean)

    Sets the worker choice strategy options in this pool.

    Type declaration

    Returns

    true if the worker choice strategy options were set, false otherwise.

    -
    start: (() => void)

    Starts the minimum number of workers in this pool.

    -

    Type declaration

    workerNodes: IWorkerNode<Worker, Data>[]

    Pool worker nodes.

    -
    \ No newline at end of file +

    Returns boolean

    true if the worker choice strategy options were set, false otherwise.

    +
    start: (() => void)

    Starts the minimum number of workers in this pool.

    +
    workerNodes: IWorkerNode<Worker, Data>[]

    Pool worker nodes.

    +
    \ No newline at end of file