X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Finterfaces%2FIPool.html;h=42a94ebafa20534278976c4a9223294071645a35;hb=7d3ed70ed3ebb6a3656041db3c6ea23a1f354616;hp=36b35e12a2e51561032948b804eb98e5176c7773;hpb=d0f1dce33156fdb99f0ca3627839001909419497;p=poolifier.git diff --git a/docs/interfaces/IPool.html b/docs/interfaces/IPool.html index 36b35e12..42a94eba 100644 --- a/docs/interfaces/IPool.html +++ b/docs/interfaces/IPool.html @@ -1,18 +1,239 @@ -IPool | poolifier
Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface IPool<Data, Response>

-

Contract definition for a poolifier pool.

-

Type parameters

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

    -

Hierarchy

  • IPool

Index

Methods

destroy

  • destroy(): Promise<void>
  • -

    Shut down every current worker in this pool.

    -

    Returns Promise<void>

execute

  • execute(data: Data): Promise<Response>
  • -

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

    -

    Parameters

    • data: Data
      -

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

      -

    Returns Promise<Response>

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

    -

setWorkerChoiceStrategy

  • setWorkerChoiceStrategy(workerChoiceStrategy: "ROUND_ROBIN" | "LESS_RECENTLY_USED"): void
  • -

    Set the worker choice strategy in this pool.

    -

    Parameters

    • workerChoiceStrategy: "ROUND_ROBIN" | "LESS_RECENTLY_USED"
      -

      The worker choice strategy.

      -

    Returns void

Generated using TypeDoc

\ No newline at end of file +IPool | poolifier
+
+ +
+
+
+
+ +

Interface IPool<Worker, Data, Response>

+
+

Contract definition for a poolifier pool.

+
+
+

Type Parameters

+
    +
  • +

    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 execution response. This can only be serializable data.

    +
+
+

Hierarchy

+
    +
  • IPool
+
+

Implemented by

+
+
+
+
+ +
+
+

Properties

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

Type declaration

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

      Shutdowns every current worker in this pool.

      +
      +

      Returns Promise<void>

+
+ +
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.
  • +
+
+
+ +
execute: ((data: Data) => Promise<Response>)
+
+

Type declaration

+
    +
  • +
      +
    • (data: Data): Promise<Response>
    • +
    • +

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

      + +

      Returns

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

      +
      +
      +

      Parameters

      +
        +
      • +
        data: Data
        +

        The input for the specified task. 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.

      + +

      Returns

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

      +
      +

      Returns number

+
+ +
setWorkerChoiceStrategy: ((workerChoiceStrategy: "ROUND_ROBIN" | "LESS_USED" | "LESS_BUSY" | "FAIR_SHARE" | "WEIGHTED_ROUND_ROBIN") => void)
+
+

Type declaration

+
    +
  • +
      +
    • (workerChoiceStrategy: "ROUND_ROBIN" | "LESS_USED" | "LESS_BUSY" | "FAIR_SHARE" | "WEIGHTED_ROUND_ROBIN"): void
    • +
    • +

      Sets the worker choice strategy in this pool.

      +
      +
      +

      Parameters

      +
        +
      • +
        workerChoiceStrategy: "ROUND_ROBIN" | "LESS_USED" | "LESS_BUSY" | "FAIR_SHARE" | "WEIGHTED_ROUND_ROBIN"
        +

        The worker choice strategy.

        +
      +

      Returns void

+
+ +
type: PoolType
+

Pool type.

+

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

+
+
+ +
workerNodes: WorkerNode<Worker, Data>[]
+

Pool worker nodes.

+
+
+ +
+
+

Generated using TypeDoc

+
\ No newline at end of file