X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Fclasses%2FAbstractPool.html;h=9de28f0cfe4a3cb12fe5a6a8e64bc4609040dd88;hb=95d287d1625c80929657a9f217774c5c8f6668e7;hp=bf67558965e87ec5bc4d2f7b7682f78b2cde7b5f;hpb=15d6dfaf877ec6a99e2bde48cb3c8a9e8671c075;p=poolifier.git diff --git a/docs/classes/AbstractPool.html b/docs/classes/AbstractPool.html index bf675589..24d4fdcd 100644 --- a/docs/classes/AbstractPool.html +++ b/docs/classes/AbstractPool.html @@ -1,4 +1,4 @@ -AbstractPool | poolifier
+AbstractPool | poolifier - v2.6.41
  • Preparing search index...
  • -
  • The search index is not available
poolifier
+
  • The search index is not available
  • poolifier - v2.6.41
    @@ -29,12 +29,12 @@
  • Data = unknown

    -

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

    +

    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.

    +

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

  • @@ -49,7 +49,7 @@
    • IPool<Worker, Data, Response>
    +
  • Defined in src/pools/abstract-pool.ts:59
  • @@ -63,9 +63,13 @@

    Properties

    @@ -76,50 +80,76 @@ info maxSize minSize +ready type +utilization worker

    Methods

    -
    afterTaskExecutionHook -afterWorkerSetup +
    addWorkerNode +afterTaskExecutionHook +afterWorkerNodeSetup beforeTaskExecutionHook buildTasksQueueOptions -checkAndEmitEvents +checkAndEmitDynamicWorkerCreationEvents +checkAndEmitTaskExecutionEvents +checkAndEmitTaskQueuingEvents +checkDynamicPoolSize checkFilePath +checkMessageWorkerId checkNumberOfWorkers checkPoolOptions checkValidTasksQueueOptions checkValidWorkerChoiceStrategy checkValidWorkerChoiceStrategyOptions -chooseWorkerNode -createAndSetupWorker +chooseWorkerNode +createAndSetupDynamicWorkerNode +createAndSetupWorkerNode createWorker dequeueTask destroy -destroyWorker +destroyWorkerNode enableTasksQueue enqueueTask execute executeTask -flushTasksQueue +flushTasksQueue flushTasksQueues -getWorkerNodeKey +getWorkerInfo +getWorkerNodeKeyByWorker +getWorkerNodeKeyByWorkerId +handleTaskExecutionResponse +handleWorkerReadyResponse +hasBackPressure +hasWorkerNodeBackPressure internalBusy isMain -pushWorkerNode +listTaskFunctions +redistributeQueuedTasks registerWorkerMessageListener removeWorkerNode +sendKillMessageToWorker +sendStartupMessageToWorker +sendStatisticsMessageToWorker sendToWorker setTasksQueueOptions +setTasksQueueSize setWorkerChoiceStrategy setWorkerChoiceStrategyOptions -setWorkerNode -setWorkerNodeTasksUsage setupHook +shallCreateDynamicWorker +shallExecuteTask +shallUpdateTaskFunctionWorkerUsage +startPool +taskStealingOnEmptyQueue tasksQueueSize -updateRunTimeTasksUsage -updateWaitTimeTasksUsage +tasksStealingOnBackPressure +updateEluWorkerUsage +updateRunTimeWorkerUsage +updateTaskStatisticsWorkerUsage +updateTaskStolenStatisticsWorkerUsage +updateWaitTimeWorkerUsage workerListener
    @@ -135,7 +165,7 @@

    Type Parameters

    +

    Returns AbstractPool<Worker, Data, Response>

    +
  • Defined in src/pools/abstract-pool.ts:115
  • Properties

    @@ -170,16 +197,19 @@

    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/abstract-pool.ts:68
  • filePath: string
    @@ -187,7 +217,15 @@
    +
  • Defined in src/pools/abstract-pool.ts:117
  • +
    + +
    max?: number
    +

    Dynamic pool maximum size property placeholder.

    +
    +
    numberOfWorkers: number
    @@ -195,7 +233,7 @@
    +
  • Defined in src/pools/abstract-pool.ts:116
  • opts: PoolOptions<Worker>
    @@ -203,11 +241,11 @@
    +
  • Defined in src/pools/abstract-pool.ts:118
  • -
    promiseResponseMap: Map<string, PromiseResponseWrapper<Worker, Response>> = ...
    -

    The execution response promise map.

    +
    promiseResponseMap: Map<string, PromiseResponseWrapper<Response>> = ...
    +

    The task execution response promise map.

    • key: The message id of each submitted task.
    • value: An object that contains the worker, the execution response promise resolve and reject callbacks.
    • @@ -216,25 +254,48 @@
    +
  • Defined in src/pools/abstract-pool.ts:78
  • +
    + +
    startTimestamp: number
    +

    The start timestamp of the pool.

    +
    +
    +
    + +
    started: boolean
    +

    Whether the pool is started or not.

    +
    +
    +
    + +
    starting: boolean
    +

    Whether the pool is starting or not.

    +
    +
    workerChoiceStrategyContext: WorkerChoiceStrategyContext<Worker, Data, Response>

    Worker choice strategy context referencing a worker choice algorithm implementation.

    -

    Default to a round robin algorithm.

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

    Pool worker nodes.

    +
  • Defined in src/pools/abstract-pool.ts:65
  • Accessors

    @@ -248,7 +309,7 @@

    Returns boolean

    +
  • Defined in src/pools/abstract-pool.ts:698
  • +
  • Defined in src/pools/abstract-pool.ts:689
  • +
  • Defined in src/pools/abstract-pool.ts:350
  • - +
    +
  • Defined in src/pools/abstract-pool.ts:562
  • - +
    +
  • Defined in src/pools/abstract-pool.ts:555
  • +
    + +
    +
  • Defined in src/pools/abstract-pool.ts:545
  • +
    + +
    +
  • Defined in src/pools/abstract-pool.ts:550
  • Methods

    +
    + +
      - +
    • Hook executed after the worker task execution. Can be overridden.

      @@ -332,43 +437,40 @@ Can be overridden.

      Parameters

      • -
        worker: Worker
        -

        The worker.

        -
        -
      • +
        workerNodeKey: number
        +

        The worker node key.

        +
      • -
        message: MessageValue<Response, Worker | MessagePort>
        +
        message: MessageValue<Response, unknown>

        The received message.

        -
        -
      +

    Returns void

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

      Function that can be hooked up when a worker has been newly created and moved to the pool worker nodes.

      -

      Can be used to update the maxListeners or binding the main-worker<->worker connection if not bind by default.

      +

      Method hooked up after a worker node has been newly created. +Can be overridden.

      Parameters

      • -
        worker: Worker
        -

        The newly created worker.

        -
        -
      +
      workerNodeKey: number
      +

      The newly created worker node key.

      +

    Returns void

    +
  • Defined in src/pools/abstract-pool.ts:1162
  • + +
  • +
    task: Task<Data>
    +

    The task to execute.

    +
  • Returns void

    +
  • Defined in src/pools/abstract-pool.ts:858
  • Returns TasksQueueOptions

    -
    - +
  • Defined in src/pools/abstract-pool.ts:672
  • +
    +
    +
    + +
    +
    + +
    +
    + +
    +
  • Defined in src/pools/abstract-pool.ts:187
  • Returns void

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

    Returns void

    +
  • Defined in src/pools/abstract-pool.ts:169
  • Returns void

    +
  • Defined in src/pools/abstract-pool.ts:213
  • Returns void

    +
  • Defined in src/pools/abstract-pool.ts:295
  • Returns void

    +
  • Defined in src/pools/abstract-pool.ts:241
  • Returns void

    -
    - -
    +
    + +
    -
    - +
  • Defined in src/pools/abstract-pool.ts:1015
  • +
    +
    +
  • Defined in src/pools/abstract-pool.ts:1105
  • +
    + +
    +
  • Defined in src/pools/abstract-pool.ts:1054
  • Returns undefined | Task<Data>

    +
  • Defined in src/pools/abstract-pool.ts:1493
  • -
    - +
  • Defined in src/pools/abstract-pool.ts:803
  • +
    + +

    Returns Promise<void>

    +
  • Defined in src/pools/abstract-pool.ts:834
  • Returns void

    +
  • Defined in src/pools/abstract-pool.ts:643
  • Returns number

    +
  • Defined in src/pools/abstract-pool.ts:1487
  • Returns Promise<Response>

    Promise that will be fulfilled when the task is completed.

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

    Returns void

    +
    -
    - -
    +
    + +

    Returns void

    +
  • Defined in src/pools/abstract-pool.ts:1501
  • -
    - +
  • Defined in src/pools/abstract-pool.ts:1511
  • +
    + +
    +
    + +

    Returns number

    The worker node key if found in the pool worker nodes, -1 otherwise.

    + +
    +
    + + -

    Returns number

    The worker node key if the worker is found in the pool worker nodes, -1 otherwise.

    +
    +

    Parameters

    +
      +
    • +
      workerId: number
      +

      The worker id.

      +
    +

    Returns number

    The worker node key if the worker id is found in the pool worker nodes, -1 otherwise.

    +
  • Defined in src/pools/abstract-pool.ts:603
  • +
    + +
    +
    + +
    +
    + +
    +
    + +
    +
  • Defined in src/pools/abstract-pool.ts:705
  • -
    - -
    +
    + +
    +
    + + +

    Returns void

    +
  • Defined in src/pools/abstract-pool.ts:1202
  • Returns void

    Returns void

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

    Returns void

    +
    +
    + +
    +
    + + +
    +

    Parameters

    +
      +
    • +
      workerNodeKey: number
      +

      The worker node key.

      +

    Returns void

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

    Returns void

    +
  • Defined in src/pools/abstract-pool.ts:1043
  • Returns void

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

    Returns void

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

    Returns void

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

    Returns boolean

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

    Returns boolean

    true if the worker node shall update its task function worker usage, false otherwise.

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

    Returns number

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

    Returns void

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

    Returns void

    +
    + +
    +
    + +
    +
  • Defined in src/pools/abstract-pool.ts:962
  • +
  • Defined in src/pools/abstract-pool.ts:1331
  • +
  • WorkerTypes
  • +
  • availableParallelism
  • -

    Generated using TypeDoc

    +

    Generated using TypeDoc

    \ No newline at end of file