X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Finterfaces%2FIPool.html;h=93f4694004b0290113fc74ab1cb6a676cc29565e;hb=460aaab4b4cb6857827d3e56e11122bffc01db8a;hp=c06cfb370a722aeda2e2740cfb67659e8b86d730;hpb=18ba88e2f8612c6137bf564388ce8f905ae6d4ee;p=poolifier.git diff --git a/docs/interfaces/IPool.html b/docs/interfaces/IPool.html index c06cfb37..93f46940 100644 --- a/docs/interfaces/IPool.html +++ b/docs/interfaces/IPool.html @@ -1,4 +1,4 @@ -IPool | poolifier
+IPool | poolifier
-
+
-

Interface IPool<Data, Response>

+

Interface IPool<Worker, Data, Response>

Contract definition for a poolifier pool.

-
+

Type Parameters

-
    +
    • -

      Data = unknown

      +

      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.

    • -

      Response = unknown

      -

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

      +

      Response = unknown

      +

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

Hierarchy

    -
  • IPool
+
+

Implemented by

+
+
  • Defined in src/pools/pool.ts:156
  • @@ -42,73 +50,138 @@

    Properties

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

    Type declaration

    • -
        -
      • (): Promise<void>
      • +
          +
        • (): Promise<void>
        • Shutdowns every current worker in this pool.

          -

          Returns Promise<void>

    -
    +
  • Defined in src/pools/pool.ts:191
  • +
    -
    emitter?: PoolEmitter
    +
    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.
    -
    +
  • Defined in src/pools/pool.ts:179
  • +
    + +
    enableTasksQueue: ((enable, tasksQueueOptions?) => void)
    +
    +

    Type declaration

    +
      +
    • +
        +
      • (enable, tasksQueueOptions?): void
      • +
      • +

        Enables/disables the worker tasks queue in this pool.

        +
        +
        +

        Parameters

        +
          +
        • +
          enable: boolean
          +

          Whether to enable or disable the worker tasks queue.

          +
        • +
        • +
          Optional tasksQueueOptions: TasksQueueOptions
          +

          The worker tasks queue options.

          +
        +

        Returns void

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

    Type declaration

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

        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.

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

        +
    +
    + +
    info: PoolInfo
    +

    Pool information.

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

    Type declaration

    • -
        -
      • (data: Data): Promise<Response>
      • +
          +
        • (tasksQueueOptions): void
        • -

          Performs the task specified in the constructor with the data parameter.

          - -

          Returns

          Promise that will be resolved when the task is successfully completed.

          +

          Sets the worker tasks queue options in this pool.

          Parameters

          • -
            data: Data
            -

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

            +
            tasksQueueOptions: TasksQueueOptions
            +

            The worker tasks queue options.

          -

          Returns Promise<Response>

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

    Type declaration

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

          @@ -116,16 +189,50 @@

          Parameters

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

            The worker choice strategy.

            +
          • +
          • +
            Optional workerChoiceStrategyOptions: WorkerChoiceStrategyOptions
            +

            The worker choice strategy options.

    Returns void

    - +
    +
    +
    +

    On This Page

    - -
    +
  • destroy
  • +
  • emitter
  • +
  • enableTasksQueue
  • +
  • execute
  • +
  • info
  • +
  • setTasksQueueOptions
  • +
  • setWorkerChoiceStrategy
  • +
  • setWorkerChoiceStrategyOptions
  • +
  • workerNodes
  • + +

    Generated using TypeDoc

    -
    \ No newline at end of file +
    \ No newline at end of file