X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Finterfaces%2FIPool.html;h=dbda0db6cf784b7577f4d7c818f48a03d59180f9;hb=c03520402c4c5f329df346b743b64da08555995c;hp=174dc3a1a608ec18307c2a4f0a0ec6e938607609;hpb=e1ba9765afbf97436250d19f28c818221ebc10b9;p=poolifier.git diff --git a/docs/interfaces/IPool.html b/docs/interfaces/IPool.html index 174dc3a1..dbda0db6 100644 --- a/docs/interfaces/IPool.html +++ b/docs/interfaces/IPool.html @@ -1,15 +1,16 @@ -IPool | poolifier - v3.1.28

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;
    listTaskFunctionNames: (() => string[]);
    removeTaskFunction: ((name) => Promise<boolean>);
    setDefaultTaskFunction: ((name) => Promise<boolean>);
    setTasksQueueOptions: ((tasksQueueOptions) => void);
    setWorkerChoiceStrategy: ((workerChoiceStrategy, workerChoiceStrategyOptions?) => void);
    setWorkerChoiceStrategyOptions: ((workerChoiceStrategyOptions) => void);
    start: (() => void);
    workerNodes: IWorkerNode<Worker, Data>[];
}

Type Parameters

Implemented by

Properties

addTaskFunction: ((name, fn) => 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.

-
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. +

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. The async tracking tooling identifier is poolifier:<PoolType>-<WorkerType>-pool.

Events that can currently be listened to:

    @@ -38,33 +39,39 @@ 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).
-
enableTasksQueue: ((enable, tasksQueueOptions?) => void)

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

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

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

Type declaration

    • (enable, tasksQueueOptions?): void
    • Parameters

      • enable: boolean

        Whether to enable or disable the worker node tasks queue.

      • Optional tasksQueueOptions: TasksQueueOptions

        The worker node tasks queue options.

        -

      Returns void

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

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

+

Returns void

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

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

Type declaration

    • (data?, name?, transferList?): Promise<Response>
    • Parameters

      • Optional data: Data

        The optional task input data for the specified task function. This can only be structured-cloneable data.

      • Optional name: string

        The 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 chosen pool's worker_threads worker and they should not be used in the main thread afterwards.

        -

      Returns Promise<Response>

Returns

Promise that will be fulfilled when the task is completed.

-
hasTaskFunction: ((name) => boolean)

Whether the specified task function exists in this pool.

+
  • Optional transferList: 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>

    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.

    Type declaration

      • (name): boolean
      • Parameters

        • name: string

          The name of the task function.

        Returns boolean

    Returns

    true if the task function exists, false otherwise.

    -
    info: PoolInfo

    Pool information.

    -
    listTaskFunctionNames: (() => string[])

    Lists the names of task function available in this pool.

    -

    Type declaration

      • (): string[]
      • Returns string[]

    Returns

    The names of task function available in this pool.

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

    Removes a task function from this pool.

    -

    Type declaration

      • (name): Promise<boolean>
      • Parameters

    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.

    +

    Type declaration

      • (data, name?, transferList?): Promise<Response[]>
      • Parameters

        • data: Iterable<Data>

          The tasks iterable input data for the specified task function. This can only be an iterable of structured-cloneable data.

          +
        • Optional name: string

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

          +
        • Optional transferList: 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[]>

    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.

    +

    Type declaration

      • (name): Promise<boolean>
      • Parameters

        • name: string

          The name of the task function.

        Returns Promise<boolean>

    Returns

    true if the task function was removed, false otherwise.

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

    Sets the default task function in this pool.

    -

    Type declaration

      • (name): Promise<boolean>
      • Parameters

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

    Sets the default task function in this pool.

    +

    Type declaration

      • (name): Promise<boolean>
      • Parameters

        • name: string

          The name of the task function.

        Returns Promise<boolean>

    Returns

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

    -
    setTasksQueueOptions: ((tasksQueueOptions) => void)

    Sets the worker node tasks queue options in this pool.

    -

    Type declaration

      • (tasksQueueOptions): void
      • Parameters

        Returns void

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

    Sets the worker choice strategy in this pool.

    -

    Type declaration

      • (workerChoiceStrategy, workerChoiceStrategyOptions?): void
      • Parameters

        • workerChoiceStrategy: "ROUND_ROBIN" | "LEAST_USED" | "LEAST_BUSY" | "LEAST_ELU" | "FAIR_SHARE" | "WEIGHTED_ROUND_ROBIN" | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"

          The worker choice strategy.

          +
    setTasksQueueOptions: ((tasksQueueOptions) => void)

    Sets the worker node tasks queue options in this pool.

    +

    Type declaration

      • (tasksQueueOptions): void
      • Parameters

        Returns void

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

    Sets the default worker choice strategy in this pool.

    +

    Type declaration

      • (workerChoiceStrategy, workerChoiceStrategyOptions?): void
      • Parameters

        • workerChoiceStrategy: "ROUND_ROBIN" | "LEAST_USED" | "LEAST_BUSY" | "LEAST_ELU" | "FAIR_SHARE" | "WEIGHTED_ROUND_ROBIN" | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"

          The default worker choice strategy.

        • Optional workerChoiceStrategyOptions: WorkerChoiceStrategyOptions

          The worker choice strategy options.

          -

        Returns void

    setWorkerChoiceStrategyOptions: ((workerChoiceStrategyOptions) => void)

    Sets the worker choice strategy options in this pool.

    -

    Type declaration

      • (workerChoiceStrategyOptions): void
      • Parameters

        Returns void

    start: (() => void)

    Starts the minimum number of workers in this pool.

    -

    Type declaration

      • (): void
      • Returns void

    workerNodes: IWorkerNode<Worker, Data>[]

    Pool worker nodes.

    -

    Generated using TypeDoc

    \ No newline at end of file +

    Returns void

    setWorkerChoiceStrategyOptions: ((workerChoiceStrategyOptions) => boolean)

    Sets the worker choice strategy options in this pool.

    +

    Type declaration

      • (workerChoiceStrategyOptions): boolean
      • Parameters

        Returns boolean

    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

      • (): void
      • Returns void

    workerNodes: IWorkerNode<Worker, Data>[]

    Pool worker nodes.

    +
    \ No newline at end of file