X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Finterfaces%2FIPool.html;h=b6acf4dcc6ba3fd8969c8e86f2fe74e31a2a9c5a;hb=2a6631992868d900762f62e4c228dce4e4ee549a;hp=5da383c90ba693819e4c2ffeefbcc361f53ae4aa;hpb=ab03ecdd9c195574f19dbed3b36641229c24f723;p=poolifier.git diff --git a/docs/interfaces/IPool.html b/docs/interfaces/IPool.html index 5da383c9..b6acf4dc 100644 --- a/docs/interfaces/IPool.html +++ b/docs/interfaces/IPool.html @@ -1,4 +1,4 @@ -IPool | poolifier
+IPool | poolifier

Contract definition for a poolifier pool.

-
-
+
+
+

Type Parameters

-
    +
    • -

      Worker extends IWorker

      +

      Worker extends IWorker

      Type of worker which manages this pool.

      -
    • + +
    • -

      Data = unknown

      -

      Type of data sent to the worker. This can only be serializable data.

      -
    • +

      Data = unknown

      +

      Type of data sent to the worker. This can only be structured-cloneable data.

      +
      +
    • -

      Response = unknown

      -

      Type of execution response. This can only be serializable data.

      -
+

Response = unknown

+

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

+
+

Hierarchy

+
  • Defined in src/pools/pool.ts:163
  • @@ -50,55 +54,58 @@

    Properties

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

    Type declaration

    • -
        -
      • (): Promise<void>
      • +
          +
        • (): Promise<void>
        • -

          Shutdowns every current worker in this pool.

          +

          Terminates every current worker in this pool.

          -

          Returns Promise<void>

    -
    - -
    emitter?: PoolEmitter
    +
  • Defined in src/pools/pool.ts:198
  • +
    + +
    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.
    • +
    • 'error': Emitted when an uncaught error occurs.
    • +
    • 'taskError': Emitted when an error occurs while executing a task.
    -
    -
    - -
    enableTasksQueue: ((enable: boolean, tasksQueueOptions?: TasksQueueOptions) => void)
    +
  • Defined in src/pools/pool.ts:186
  • +
    + +
    enableTasksQueue: ((enable, tasksQueueOptions?) => void)

    Type declaration

    • -
        -
      • (enable: boolean, tasksQueueOptions?: TasksQueueOptions): void
      • +
          +
        • (enable, tasksQueueOptions?): void
        • Enables/disables the worker tasks queue in this pool.

          @@ -106,68 +113,66 @@

          Parameters

          • -
            enable: boolean
            +
            enable: boolean

            Whether to enable or disable the worker tasks queue.

            -
          • +
    +
  • -
    Optional tasksQueueOptions: TasksQueueOptions
    +
    Optional tasksQueueOptions: TasksQueueOptions

    The worker tasks queue options.

    -
  • -

    Returns void

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

    Type declaration

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

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

          - -

          Returns

          Promise that will be fulfilled when the task is completed.

          +

          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.

            -
          -

          Returns Promise<Response>

    -
    - -
    findFreeWorkerNodeKey: (() => number)
    -
    -

    Type declaration

    -
      -
    • -
        -
      • (): number
      • -
      • -

        Finds a free worker node key based on the number of tasks the worker has applied.

        -

        If a worker is found with 0 running tasks, it is detected as free and its worker node key is returned.

        -

        If no free worker is found, -1 is returned.

        +
        Optional data: Data
        +

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

        +
        +
      • +
      • +
        Optional name: string
        +

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

        +
        +
    +

    Returns Promise<Response>

    Promise that will be fulfilled when the task is completed.

    -

    Returns

    A worker node key if there is one, -1 otherwise.

    +
    +
    + +
    info: PoolInfo
    +

    Pool information.

    -

    Returns number

    -
    - -
    setTasksQueueOptions: ((tasksQueueOptions: TasksQueueOptions) => void)
    +
  • Defined in src/pools/pool.ts:171
  • +
    + +
    setTasksQueueOptions: ((tasksQueueOptions) => void)

    Type declaration

    • -
        -
      • (tasksQueueOptions: TasksQueueOptions): void
      • +
          +
        • (tasksQueueOptions): void
        • Sets the worker tasks queue options in this pool.

          @@ -175,21 +180,23 @@

          Parameters

    -

    Returns void

    -
    - -
    setWorkerChoiceStrategy: ((workerChoiceStrategy: "ROUND_ROBIN" | "LESS_USED" | "LESS_BUSY" | "FAIR_SHARE" | "WEIGHTED_ROUND_ROBIN", workerChoiceStrategyOptions?: WorkerChoiceStrategyOptions) => void)
    +
  • Defined in src/pools/pool.ts:232
  • +
    + +
    setWorkerChoiceStrategy: ((workerChoiceStrategy, workerChoiceStrategyOptions?) => void)

    Type declaration

    • -
        -
      • (workerChoiceStrategy: "ROUND_ROBIN" | "LESS_USED" | "LESS_BUSY" | "FAIR_SHARE" | "WEIGHTED_ROUND_ROBIN", workerChoiceStrategyOptions?: WorkerChoiceStrategyOptions): void
      • +
          +
        • (workerChoiceStrategy, workerChoiceStrategyOptions?): void
        • Sets the worker choice strategy in this pool.

          @@ -197,25 +204,28 @@

          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
    +
    Optional workerChoiceStrategyOptions: WorkerChoiceStrategyOptions

    The worker choice strategy options.

    -
  • -

    Returns void

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

    Type declaration

    -

    Returns void

    -
    - -
    type: PoolType
    -

    Pool type.

    -

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

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

    Pool worker nodes.

    -
    +
  • Defined in src/pools/pool.ts:175
  • -

    On This Page

    +

    On This Page

    +
  • destroy
  • +
  • emitter
  • +
  • enableTasksQueue
  • +
  • execute
  • +
  • info
  • +
  • setTasksQueueOptions
  • +
  • setWorkerChoiceStrategy
  • +
  • setWorkerChoiceStrategyOptions
  • +
  • workerNodes
  • +
  • AbstractPool
  • +
  • AbstractWorker
  • +
  • CircularArray
  • +
  • ClusterWorker
  • +
  • DynamicClusterPool
  • +
  • DynamicThreadPool
  • +
  • FixedClusterPool
  • +
  • FixedThreadPool
  • +
  • PoolEmitter
  • +
  • Queue
  • +
  • ThreadWorker
  • +
  • WorkerChoiceStrategyContext
  • +
  • ClusterPoolOptions
  • +
  • EventLoopUtilizationMeasurementStatistics
  • +
  • IPool
  • +
  • IWorker
  • +
  • IWorkerChoiceStrategy
  • +
  • MeasurementOptions
  • +
  • MeasurementStatistics
  • +
  • MeasurementStatisticsRequirements
  • +
  • MessageValue
  • +
  • PoolInfo
  • +
  • PoolOptions
  • +
  • PromiseResponseWrapper
  • +
  • StrategyPolicy
  • +
  • Task
  • +
  • TaskError
  • +
  • TaskPerformance
  • +
  • TaskStatistics
  • +
  • TaskStatisticsRequirements
  • +
  • TasksQueueOptions
  • +
  • ThreadPoolOptions
  • +
  • WorkerChoiceStrategyOptions
  • +
  • WorkerInfo
  • +
  • WorkerNode
  • +
  • WorkerOptions
  • +
  • WorkerStatistics
  • +
  • WorkerUsage
  • +
  • ErrorHandler
  • +
  • ExitHandler
  • +
  • KillBehavior
  • +
  • Measurement
  • +
  • MessageHandler
  • +
  • OnlineHandler
  • +
  • PoolEvent
  • +
  • PoolType
  • +
  • TaskFunctions
  • +
  • WorkerAsyncFunction
  • +
  • WorkerChoiceStrategy
  • +
  • WorkerFunction
  • +
  • WorkerSyncFunction
  • +
  • WorkerType
  • +
  • KillBehaviors
  • +
  • Measurements
  • +
  • PoolEvents
  • +
  • PoolTypes
  • +
  • WorkerChoiceStrategies
  • +
  • WorkerTypes
  • +
  • availableParallelism
  • Generated using TypeDoc

    \ No newline at end of file