X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Finterfaces%2FIPool.html;h=7205a9f1379b20393b207782b2df174c2fc238a5;hb=22c85455d2f30345148aa3e1304d3b0840102f72;hp=133c677fb42c5f8d15936d76d42c2b133102f86a;hpb=ae782cfa994b2468b49e4279e03c5140e9e309e3;p=poolifier.git diff --git a/docs/interfaces/IPool.html b/docs/interfaces/IPool.html index 133c677f..7205a9f1 100644 --- a/docs/interfaces/IPool.html +++ b/docs/interfaces/IPool.html @@ -1,4 +1,4 @@ -IPool | poolifier
+IPool | poolifier - v2.6.41
  • Preparing search index...
  • -
  • The search index is not available
poolifier
+
  • The search index is not available
  • poolifier - v2.6.41
    @@ -17,22 +17,26 @@

    Interface IPool<Worker, Data, Response>

    Contract definition for a poolifier pool.

    -
    +
    +

    Type Parameters

    +

    Type of execution response. This can only be structured-cloneable data.

    +
    +

    Hierarchy

    +
  • Defined in src/pools/pool.ts:182
  • @@ -50,21 +54,22 @@

    Properties

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

    Type declaration

    @@ -73,25 +78,32 @@
    • (): Promise<void>
    • -

      Shutdowns every current worker in this pool.

      +

      Terminates all workers in this pool.

      -

      Returns Promise<void>

    +
  • Defined in src/pools/pool.ts:235
  • - +
    emitter?: PoolEmitter

    Emitter on which events can be listened to.

    Events that can currently be listened to:

      -
    • 'full': Emitted when the pool is dynamic and full.
    • -
    • 'busy': Emitted when the pool is busy.
    • +
    • '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).
    -
    +
  • Defined in src/pools/pool.ts:218
  • - +
    enableTasksQueue: ((enable, tasksQueueOptions?) => void)

    Type declaration

    @@ -100,80 +112,136 @@
    • (enable, tasksQueueOptions?): void
    • -

      Enables/disables the worker tasks queue in this pool.

      +

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

      Parameters

      • enable: boolean
        -

        Whether to enable or disable the worker tasks queue.

        +

        Whether to enable or disable the worker node tasks queue.

      • Optional tasksQueueOptions: TasksQueueOptions
        -

        The worker tasks queue options.

        -
      -

      Returns void

    +
  • Defined in src/pools/pool.ts:266
  • - -
    execute: ((data?, name?) => Promise<Response>)
    + +
    execute: ((data?, name?, transferList?) => Promise<Response>)

    Type declaration

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

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

        +

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

        Parameters

        • Optional data: Data
          -

          The task input data for the specified worker function. This can only be serializable data.

          -
        • +

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

          +
          Optional
        • Optional name: string
          -

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

          -
        +

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

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

        +
        Optional

    Returns Promise<Response>

    Promise that will be fulfilled when the task is completed.

    -
    +
  • Defined in src/pools/pool.ts:227
  • +
    + +
    hasWorkerNodeBackPressure: ((workerNodeKey) => boolean)
    +
    +

    Type declaration

    +
      +
    • +
        +
      • (workerNodeKey): boolean
      • +
      • Internal +

        Whether the worker node has back pressure (i.e. its tasks queue is full).

        +
        +
        +

        Parameters

        +
          +
        • +
          workerNodeKey: number
          +

          The worker node key.

          +
        +

        Returns boolean

        true if the worker node has back pressure, false otherwise.

        + +
    +
    + +
    info: PoolInfo
    +

    Pool information.

    +
    +
    +
    + +
    listTaskFunctions: (() => string[])
    +
    +

    Type declaration

    +
      +
    • +
        +
      • (): string[]
      • +
      • +

        Lists the names of task function available in this pool.

        +
        +

        Returns string[]

        The names of task function available in this pool.

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

    Type declaration

      • -
      • (tasksQueueOptions): void
      • +
      • (tasksQueueOptions): void
      • -

        Sets the worker tasks queue options in this pool.

        +

        Sets the worker node tasks queue options in this pool.

        Parameters

        • tasksQueueOptions: TasksQueueOptions
          -

          The worker tasks queue options.

          +

          The worker node tasks queue options.

        -

        Returns void

    +
  • Defined in src/pools/pool.ts:275
  • - +
    setWorkerChoiceStrategy: ((workerChoiceStrategy, workerChoiceStrategyOptions?) => void)

    Type declaration

      • -
      • (workerChoiceStrategy, workerChoiceStrategyOptions?): void
      • +
      • (workerChoiceStrategy, workerChoiceStrategyOptions?): void
      • Sets the worker choice strategy in this pool.

        @@ -181,25 +249,26 @@

        Parameters

        • -
          workerChoiceStrategy: "ROUND_ROBIN" | "LESS_USED" | "LESS_BUSY" | "FAIR_SHARE" | "WEIGHTED_ROUND_ROBIN"
          +
          workerChoiceStrategy: "ROUND_ROBIN" | "LEAST_USED" | "LEAST_BUSY" | "LEAST_ELU" | "FAIR_SHARE" | "WEIGHTED_ROUND_ROBIN" | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"

          The worker choice strategy.

        • Optional workerChoiceStrategyOptions: WorkerChoiceStrategyOptions

          The worker choice strategy options.

          -
    -

    Returns void

    +
  • Defined in src/pools/pool.ts:248
  • - +
    setWorkerChoiceStrategyOptions: ((workerChoiceStrategyOptions) => void)

    Type declaration

      • -
      • (workerChoiceStrategyOptions): void
      • +
      • (workerChoiceStrategyOptions): void
      • Sets the worker choice strategy options in this pool.

        @@ -210,36 +279,23 @@
        workerChoiceStrategyOptions: WorkerChoiceStrategyOptions

        The worker choice strategy options.

    -

    Returns void

    -
    - -
    size: number
    -

    Pool maximum size.

    -
    -
    - -
    type: PoolType
    -

    Pool type.

    -

    If it is 'dynamic', it provides the max property.

    -
    +
  • Defined in src/pools/pool.ts:257
  • - -
    workerNodes: WorkerNode<Worker, Data>[]
    + +
    workerNodes: IWorkerNode<Worker, Data>[]

    Pool worker nodes.

    -
    +
  • Defined in src/pools/pool.ts:196
  • +
  • destroy
  • +
  • emitter
  • +
  • enableTasksQueue
  • +
  • execute
  • +
  • hasWorkerNodeBackPressure
  • +
  • info
  • +
  • listTaskFunctions
  • +
  • setTasksQueueOptions
  • +
  • setWorkerChoiceStrategy
  • +
  • setWorkerChoiceStrategyOptions
  • +
  • workerNodes
  • +
  • AbstractPool
  • +
  • AbstractWorker
  • +
  • CircularArray
  • +
  • ClusterWorker
  • +
  • Deque
  • +
  • DynamicClusterPool
  • +
  • DynamicThreadPool
  • +
  • FixedClusterPool
  • +
  • FixedThreadPool
  • +
  • Node
  • +
  • PoolEmitter
  • +
  • ThreadWorker
  • +
  • WorkerChoiceStrategyContext
  • +
  • ClusterPoolOptions
  • +
  • EventLoopUtilizationMeasurementStatistics
  • +
  • IPool
  • +
  • IWorker
  • +
  • IWorkerChoiceStrategy
  • +
  • IWorkerNode
  • +
  • MeasurementOptions
  • +
  • MeasurementStatistics
  • +
  • MeasurementStatisticsRequirements
  • +
  • MessageValue
  • +
  • PoolInfo
  • +
  • PoolOptions
  • +
  • PromiseResponseWrapper
  • +
  • StrategyData
  • +
  • StrategyPolicy
  • +
  • Task
  • +
  • TaskError
  • +
  • TaskPerformance
  • +
  • TaskStatistics
  • +
  • TaskStatisticsRequirements
  • +
  • TasksQueueOptions
  • +
  • ThreadPoolOptions
  • +
  • WorkerChoiceStrategyOptions
  • +
  • WorkerInfo
  • +
  • WorkerOptions
  • +
  • WorkerStatistics
  • +
  • WorkerUsage
  • +
  • ErrorHandler
  • +
  • ExitHandler
  • +
  • KillBehavior
  • +
  • KillHandler
  • +
  • Measurement
  • +
  • MessageHandler
  • +
  • OnlineHandler
  • +
  • PoolEvent
  • +
  • PoolType
  • +
  • TaskAsyncFunction
  • +
  • TaskFunction
  • +
  • TaskFunctions
  • +
  • TaskSyncFunction
  • +
  • WorkerChoiceStrategy
  • +
  • WorkerNodeEventCallback
  • +
  • WorkerType
  • +
  • Writable
  • +
  • KillBehaviors
  • +
  • Measurements
  • +
  • PoolEvents
  • +
  • PoolTypes
  • +
  • WorkerChoiceStrategies
  • +
  • WorkerTypes
  • +
  • availableParallelism
  • -

    Generated using TypeDoc

    +

    Generated using TypeDoc

    \ No newline at end of file