X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Finterfaces%2FIPool.html;h=42a94ebafa20534278976c4a9223294071645a35;hb=e39450c0889208d6dcde666fc05b95fe7a98ee29;hp=b81dba1f78e565d1768cfd7e580831278660bca7;hpb=8bd0b5363ad2defbce7c1cc49e616c24ad135dde;p=poolifier.git diff --git a/docs/interfaces/IPool.html b/docs/interfaces/IPool.html index b81dba1f..42a94eba 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.

@@ -22,19 +22,27 @@

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

    +

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

Hierarchy

    -
  • IPool
@@ -45,7 +53,10 @@

Properties

@@ -63,27 +74,28 @@

Returns Promise<void>

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

    Emitter on which events can be listened to.

    Events that can currently be listened to:

      -
    • 'busy'
    • +
    • 'full': Emitted when the pool is dynamic and full.
    • +
    • 'busy': Emitted when the pool is busy.
    +
  • Defined in src/pools/pool.ts:142
  • -
    execute: ((data: Data) => Promise<Response>)
    +
    execute: ((data: Data) => Promise<Response>)

    Type declaration

      • -
      • (data: Data): Promise<Response>
      • +
      • (data: Data): Promise<Response>
      • Performs the task specified in the constructor with the data parameter.

        @@ -93,21 +105,40 @@

        Parameters

        • -
          data: Data
          +
          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

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

    Type declaration

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

        @@ -115,16 +146,32 @@

        Parameters

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

          The worker choice strategy.

    Returns void

    - +
    +
    -
    +
  • destroy
  • +
  • emitter
  • +
  • execute
  • +
  • findFreeWorkerNodeKey
  • +
  • setWorkerChoiceStrategy
  • +
  • type
  • +
  • workerNodes
  • + +

    Generated using TypeDoc

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