From d7bc9891c39261dc3fa46f9baa95e4ceff26479a Mon Sep 17 00:00:00 2001 From: Documentation Bot Date: Mon, 16 Feb 2026 19:07:45 +0000 Subject: [PATCH] docs: publish documentation --- docs/assets/hierarchy.js | 2 +- docs/assets/highlight.css | 2 +- docs/assets/icons.js | 2 +- docs/assets/icons.svg | 2 +- docs/assets/search.js | 2 +- docs/assets/style.css | 6 +- docs/classes/src.ClusterWorker.html | 78 +++++++++-------- docs/classes/src.DynamicClusterPool.html | 86 ++++++++++--------- docs/classes/src.DynamicThreadPool.html | 86 ++++++++++--------- docs/classes/src.FixedClusterPool.html | 86 ++++++++++--------- docs/classes/src.FixedThreadPool.html | 86 ++++++++++--------- docs/classes/src.ThreadWorker.html | 78 +++++++++-------- docs/documents/api.html | 73 +++++++++++----- docs/documents/general-guidelines.html | 17 ++-- docs/documents/worker-choice-strategies.html | 24 ++++-- docs/functions/src.availableParallelism.html | 4 +- docs/hierarchy.html | 2 +- docs/index.html | 2 +- docs/interfaces/src.AbstractPool.html | 70 +++++++-------- docs/interfaces/src.AbstractWorker.html | 50 +++++------ docs/interfaces/src.CircularBuffer.html | 18 ++-- ...tLoopUtilizationMeasurementStatistics.html | 6 +- docs/interfaces/src.FixedQueueNode.html | 6 +- docs/interfaces/src.IFixedQueue.html | 26 +++--- docs/interfaces/src.IPool.html | 36 ++++---- docs/interfaces/src.IWorker.html | 46 +++++----- .../interfaces/src.IWorkerChoiceStrategy.html | 30 +++---- docs/interfaces/src.IWorkerNode.html | 72 ++++++++-------- docs/interfaces/src.MeasurementOptions.html | 6 +- .../interfaces/src.MeasurementStatistics.html | 16 ++-- ...src.MeasurementStatisticsRequirements.html | 10 +-- docs/interfaces/src.MessageValue.html | 48 +++++------ docs/interfaces/src.PoolInfo.html | 20 ++--- docs/interfaces/src.PoolOptions.html | 32 +++---- docs/interfaces/src.PriorityQueue.html | 24 +++--- .../src.PromiseResponseWrapper.html | 14 +-- docs/interfaces/src.StrategyData.html | 6 +- docs/interfaces/src.StrategyPolicy.html | 8 +- docs/interfaces/src.Task.html | 20 ++--- docs/interfaces/src.TaskFunctionObject.html | 17 ++-- .../src.TaskFunctionOperationResult.html | 6 +- .../src.TaskFunctionProperties.html | 15 ++-- docs/interfaces/src.TaskPerformance.html | 12 +-- docs/interfaces/src.TaskStatistics.html | 18 ++-- .../src.TaskStatisticsRequirements.html | 10 +-- docs/interfaces/src.TasksQueueOptions.html | 16 ++-- .../src.WorkerChoiceStrategiesContext.html | 34 ++++---- .../src.WorkerChoiceStrategyOptions.html | 14 +-- docs/interfaces/src.WorkerError.html | 16 ++-- docs/interfaces/src.WorkerInfo.html | 26 +++--- .../interfaces/src.WorkerNodeEventDetail.html | 6 +- docs/interfaces/src.WorkerNodeOptions.html | 6 +- docs/interfaces/src.WorkerOptions.html | 10 +-- docs/interfaces/src.WorkerStatistics.html | 8 +- docs/interfaces/src.WorkerUsage.html | 12 +-- docs/modules/src.html | 2 +- docs/types/src.ClusterPoolOptions.html | 4 +- docs/types/src.ErrorHandler.html | 4 +- docs/types/src.EventHandler.html | 4 +- docs/types/src.ExitHandler.html | 4 +- docs/types/src.KillBehavior.html | 4 +- docs/types/src.KillHandler.html | 4 +- docs/types/src.Measurement.html | 4 +- docs/types/src.MessageHandler.html | 4 +- docs/types/src.OnlineHandler.html | 4 +- docs/types/src.PoolEvent.html | 4 +- docs/types/src.PoolType.html | 4 +- docs/types/src.TaskAsyncFunction.html | 4 +- docs/types/src.TaskFunction.html | 4 +- docs/types/src.TaskFunctions.html | 4 +- docs/types/src.TaskSyncFunction.html | 4 +- docs/types/src.ThreadPoolOptions.html | 4 +- docs/types/src.WorkerChoiceStrategy.html | 4 +- docs/types/src.WorkerType.html | 4 +- docs/types/src.Writable.html | 4 +- docs/variables/src.KillBehaviors.html | 4 +- docs/variables/src.Measurements.html | 4 +- docs/variables/src.PoolEvents.html | 4 +- docs/variables/src.PoolTypes.html | 4 +- .../variables/src.WorkerChoiceStrategies.html | 4 +- docs/variables/src.WorkerTypes.html | 4 +- 81 files changed, 796 insertions(+), 734 deletions(-) diff --git a/docs/assets/hierarchy.js b/docs/assets/hierarchy.js index 40e2cd40f..2326468f6 100644 --- a/docs/assets/hierarchy.js +++ b/docs/assets/hierarchy.js @@ -1 +1 @@ -window.hierarchyData = "eJydU89rwjAU/l/eOTrSJI3JbWwMPAx2kO0gHrI2zmJsIUlhQ/q/j1S3xTox9VJo+318P957e7BN4x3IJeZUoFwQhDlmKwRWr40ufNXUDuQeMh6etdppkHD/7rxVhX9pGgMItlVdgsxYjqC1BiRUtdd2rQrt7pwtpjF8uvG7wCmMcg4keFdOAn/yywk/N5Upra5BLhnhCOOMrDoEhNPIxONXrXZV8WBa57U9sYKz2Y+VXufo45xx0c3hQ4eAkTj4U/WpyxGKQ/wVvZPkhNMQOhckMjBPrHx+S9cZD4KCifOWFxurVTmi5D/C9Y7DfIclpwsO4GMqFkyExDjn8ZCftXPqQ78q0+qEqmN4QuNBj2MW6S2U2yboBNjYiYZkfUJOxT/3+9bYrbYjLvhAGO1iRinCgvZHHF4iK8fjGDi5MOoTcMJeCRrv1WFH0pRi7DWhrvsG1U67zg==" \ No newline at end of file +window.hierarchyData = "eJydk8FvwiAYxf+X74xOUKBwW7Ys8bBkB7MdjAfW4mzENgFMtpj+7wvVbbTOSL30QN+X33vvgwPYuvYO5BJzyhATDGFO8AqB1Wujc1/WlQN5AMLDt1I7DRLu3523KvcvdW0AwbasCpCEMgR7a0BCWXlt1yrX7s7ZfBzLxxu/CzO5Uc6BBO+KUZgf/c6En5vSFFZXIJd0NkEYE7FqEEx5bOLxq1K7Mn8we+e17VjBJPux0nJOPs4nLro5HjQI6GwSMZ/KT10MIPb1V3id5FPOQ2gmWGRgnlj5/JauSQsUjJ63vNhYrYoBJf8NXO847LdfcjqwJx9SsWA0JMYsm0b8Z+2c+tCvyux1QtWxPKHxwOMER7yFctsETpAN3WhI1ibklP3zft9qu9V2wAs+Dgx2kVGMsKC4tZLROPzpcfScXFh1R5xwr0QHdbwjaaRYew3UNN++Gbu+" \ No newline at end of file diff --git a/docs/assets/highlight.css b/docs/assets/highlight.css index 4cb403ad0..ca19fc8e9 100644 --- a/docs/assets/highlight.css +++ b/docs/assets/highlight.css @@ -1,6 +1,6 @@ :root { --light-hl-0: #AF00DB; - --dark-hl-0: #CE92A4; + --dark-hl-0: #C586C0; --light-hl-1: #000000; --dark-hl-1: #D4D4D4; --light-hl-2: #001080; diff --git a/docs/assets/icons.js b/docs/assets/icons.js index 58882d76d..3ae8f55e5 100644 --- a/docs/assets/icons.js +++ b/docs/assets/icons.js @@ -3,7 +3,7 @@ function addIcons() { if (document.readyState === "loading") return document.addEventListener("DOMContentLoaded", addIcons); const svg = document.body.appendChild(document.createElementNS("http://www.w3.org/2000/svg", "svg")); - svg.innerHTML = `MMNEPVFCICPMFPCPTTAAATR`; + svg.innerHTML = `MMNEPVFCICPMFPCPTTAAATR`; svg.style.display = "none"; if (location.protocol === "file:") updateUseElements(); } diff --git a/docs/assets/icons.svg b/docs/assets/icons.svg index 50ad5799d..10db10be0 100644 --- a/docs/assets/icons.svg +++ b/docs/assets/icons.svg @@ -1 +1 @@ -MMNEPVFCICPMFPCPTTAAATR \ No newline at end of file +MMNEPVFCICPMFPCPTTAAATR \ No newline at end of file diff --git a/docs/assets/search.js b/docs/assets/search.js index 3bce47a03..836a49669 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = "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"; \ No newline at end of file +window.searchData = "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"; \ No newline at end of file diff --git a/docs/assets/style.css b/docs/assets/style.css index 5ba5a2a90..44328e99a 100644 --- a/docs/assets/style.css +++ b/docs/assets/style.css @@ -1595,9 +1595,9 @@ .container-main { grid-template-columns: minmax(0, 1fr) minmax(0, 2.5fr) minmax( - 0, - 20rem - ); + 0, + 20rem + ); grid-template-areas: "sidebar content toc"; } diff --git a/docs/classes/src.ClusterWorker.html b/docs/classes/src.ClusterWorker.html index 9d2db5247..89239062f 100644 --- a/docs/classes/src.ClusterWorker.html +++ b/docs/classes/src.ClusterWorker.html @@ -1,4 +1,4 @@ -ClusterWorker | poolifier - v5.1.7
poolifier - v5.1.7
    Preparing search index...

    Class ClusterWorker<Data, Response>

    A cluster worker used by a poolifier ClusterPool.

    +ClusterWorker | poolifier - v5.2.0
    poolifier - v5.2.0
      Preparing search index...

      Class ClusterWorker<Data, Response>

      A cluster worker used by a poolifier ClusterPool.

      When this worker is inactive for more than the given maxInactiveTime, it will send a termination request to its main worker.

      If you use a DynamicClusterPool the extra workers that were created will be terminated, @@ -7,7 +7,7 @@ but the minimum number of workers will be guaranteed.

      2.0.0

      Type Parameters

      • Data = unknown

        Type of data this worker receives from pool's execution. This can only be structured-cloneable data.

      • Response = unknown

        Type of response the worker sends back to the main worker. This can only be structured-cloneable data.

        -

      Hierarchy (View Summary)

      Index

      Constructors

      Hierarchy (View Summary)

      Index

      Constructors

      Properties

      activeInterval? isMain lastTaskTimestamp @@ -32,54 +32,56 @@ but the minimum number of workers will be guaranteed.

      sendTaskFunctionsPropertiesToMainWorker sendToMainWorker setDefaultTaskFunction -

      Constructors

      Constructors

      Properties

      activeInterval?: Timeout

      Handler id of the activeInterval worker activity check.

      -
      isMain: boolean | undefined

      Whether this is the main worker or not.

      -
      lastTaskTimestamp: number

      Timestamp of the last task processed by this worker.

      -
      opts: WorkerOptions = DEFAULT_WORKER_OPTIONS

      Options for the worker.

      -
      statistics?: WorkerStatistics

      Performance statistics computation requirements.

      -
      taskAbortFunctions: Map<
          `${string}-${string}-${string}-${string}-${string}`,
          () => void,
      >

      Task abort functions processed by the worker when task operation 'abort' is received.

      -
      taskFunctions: Map<string, TaskFunctionObject<Data, Response>>

      Task function object(s) processed by the worker when the pool's execute method is invoked.

      -

      Accessors

      Methods

      Returns ClusterWorker<Data, Response>

      Properties

      activeInterval?: Timeout

      Handler id of the activeInterval worker activity check.

      +
      isMain: boolean | undefined

      Whether this is the main worker or not.

      +
      lastTaskTimestamp: number

      Timestamp of the last task processed by this worker.

      +
      opts: WorkerOptions = DEFAULT_WORKER_OPTIONS

      Options for the worker.

      +
      statistics?: WorkerStatistics

      Performance statistics computation requirements.

      +
      taskAbortFunctions: Map<
          `${string}-${string}-${string}-${string}-${string}`,
          () => void,
      >

      Task abort functions processed by the worker when task operation 'abort' is received.

      +
      taskFunctions: Map<string, TaskFunctionObject<Data, Response>>

      Task function object(s) processed by the worker when the pool's execute method is invoked.

      +

      Accessors

      Methods

      • Handles a worker error.

        Parameters

        • error: Error

          The error raised by the worker.

        Returns { aborted: boolean; message: string; stack?: string }

        The worker error object.

        -
      +
      diff --git a/docs/classes/src.DynamicClusterPool.html b/docs/classes/src.DynamicClusterPool.html index 6807c41d9..6220e0bee 100644 --- a/docs/classes/src.DynamicClusterPool.html +++ b/docs/classes/src.DynamicClusterPool.html @@ -1,11 +1,11 @@ -DynamicClusterPool | poolifier - v5.1.7
      poolifier - v5.1.7
        Preparing search index...

        Class DynamicClusterPool<Data, Response>

        A cluster pool with a dynamic number of workers, but a guaranteed minimum number of workers.

        +DynamicClusterPool | poolifier - v5.2.0
        poolifier - v5.2.0
          Preparing search index...

          Class DynamicClusterPool<Data, Response>

          A cluster pool with a dynamic number of workers, but a guaranteed minimum number of workers.

          This cluster pool creates new workers when the others are busy, up to the maximum number of workers. When the maximum number of workers is reached and workers are busy, an event is emitted. If you want to listen to this event, use the pool's emitter.

          2.0.0

          Type Parameters

          • 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 structured-cloneable data.

            -

          Hierarchy (View Summary)

          Index

          Constructors

          Hierarchy (View Summary)

          Index

          Constructors

          Properties

          destroying emitter? filePath @@ -57,78 +57,80 @@ When the maximum number of workers is reached and workers are busy, an event is shallCreateDynamicWorker start workerMessageListener -

          Constructors

          • Constructs a new poolifier dynamic cluster pool.

            -

            Type Parameters

            • Data = unknown
            • Response = unknown

            Parameters

            • min: number

              Minimum number of workers which are always active.

              +

          Constructors

          • Constructs a new poolifier dynamic cluster pool.

            +

            Type Parameters

            • 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 structured-cloneable data.

              +

            Parameters

            • min: number

              Minimum number of workers which are always active.

            • max: number

              Maximum number of workers that can be created by this pool.

            • filePath: string

              Path to an implementation of a ClusterWorker file, which can be relative or absolute.

            • opts: ClusterPoolOptions = {}

              Options for this dynamic cluster pool.

              -

            Returns DynamicClusterPool<Data, Response>

          Properties

          destroying: boolean

          Whether the pool is destroying or not.

          -
          emitter?: EventEmitterAsyncResource
          filePath: string

          Path to the worker file.

          -
          maximumNumberOfWorkers?: number

          Maximum number of workers that this pool manages.

          -
          minimumNumberOfWorkers: number

          Minimum number of workers that this pool manages.

          -
          opts: PoolOptions<Worker>

          Options for the pool.

          -
          promiseResponseMap: Map<
              `${string}-${string}-${string}-${string}-${string}`,
              PromiseResponseWrapper<Response>,
          > = ...

          The task execution response promise map:

          +

          Returns DynamicClusterPool<Data, Response>

          Properties

          destroying: boolean

          Whether the pool is destroying or not.

          +
          emitter?: EventEmitterAsyncResource
          filePath: string

          Path to the worker file.

          +
          maximumNumberOfWorkers?: number

          Maximum number of workers that this pool manages.

          +
          minimumNumberOfWorkers: number

          Minimum number of workers that this pool manages.

          +
          opts: PoolOptions<Worker>

          Options for the pool.

          +
          promiseResponseMap: Map<
              `${string}-${string}-${string}-${string}-${string}`,
              PromiseResponseWrapper<Response>,
          > = ...

          The task execution response promise map:

          • key: The message id of each submitted task.
          • value: An object that contains task's worker node key, execution response promise resolve and reject callbacks, async resource.

          When we receive a message from the worker, we get a map entry with the promise resolve/reject bound to the message id.

          -
          started: boolean

          Whether the pool is started or not.

          -
          starting: boolean

          Whether the pool is starting or not.

          -
          workerChoiceStrategiesContext?: WorkerChoiceStrategiesContext<
              Worker,
              Data,
              Response,
          >

          Worker choice strategies context referencing worker choice algorithms implementation.

          -
          workerNodes: IWorkerNode<Worker, Data>[] = []

          Accessors

          started: boolean

          Whether the pool is started or not.

          +
          starting: boolean

          Whether the pool is starting or not.

          +
          workerChoiceStrategiesContext?: WorkerChoiceStrategiesContext<
              Worker,
              Data,
              Response,
          >

          Worker choice strategies context referencing worker choice algorithms implementation.

          +
          workerNodes: IWorkerNode<Worker, Data>[] = []

          Accessors

          • get backPressure(): boolean

            Whether the pool is back pressured or not.

            Returns boolean

            The pool back pressure boolean status.

            -
          • get busy(): boolean

            Whether the pool is busy or not.

            Returns boolean

            The pool busyness boolean status.

            -
          • get type(): "fixed" | "dynamic"

            The pool type.

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

            -

            Returns "fixed" | "dynamic"

          • get worker(): "cluster" | "thread"

            The worker type.

            -

            Returns "cluster" | "thread"

          Methods

          • Hook executed after the worker task execution. +

            Returns "fixed" | "dynamic"

          • get worker(): "cluster" | "thread"

            The worker type.

            +

            Returns "cluster" | "thread"

          Methods

          • Method hooked up after a worker node has been newly created. +

          • message: MessageValue<Response>

            The received message.

            +

          Returns void

          Returns void

          Returns void

          Returns void

          Returns Promise<void>

          Returns void

          Returns void

          Returns void

          Returns void

          +
          diff --git a/docs/classes/src.DynamicThreadPool.html b/docs/classes/src.DynamicThreadPool.html index 8483d6793..d4f21b022 100644 --- a/docs/classes/src.DynamicThreadPool.html +++ b/docs/classes/src.DynamicThreadPool.html @@ -1,11 +1,11 @@ -DynamicThreadPool | poolifier - v5.1.7
          poolifier - v5.1.7
            Preparing search index...

            Class DynamicThreadPool<Data, Response>

            A thread pool with a dynamic number of threads, but a guaranteed minimum number of threads.

            +DynamicThreadPool | poolifier - v5.2.0
            poolifier - v5.2.0
              Preparing search index...

              Class DynamicThreadPool<Data, Response>

              A thread pool with a dynamic number of threads, but a guaranteed minimum number of threads.

              This thread pool creates new threads when the others are busy, up to the maximum number of threads. When the maximum number of threads is reached and workers are busy, an event is emitted. If you want to listen to this event, use the pool's emitter.

              0.0.1

              Type Parameters

              • 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 structured-cloneable data.

                -

              Hierarchy (View Summary)

              Index

              Constructors

              Hierarchy (View Summary)

              Index

              Constructors

              Properties

              destroying emitter? filePath @@ -57,79 +57,81 @@ When the maximum number of threads is reached and workers are busy, an event is shallCreateDynamicWorker start workerMessageListener -

              Constructors

              • Constructs a new poolifier dynamic thread pool.

                -

                Type Parameters

                • Data = unknown
                • Response = unknown

                Parameters

                • min: number

                  Minimum number of threads which are always active.

                  +

              Constructors

              • Constructs a new poolifier dynamic thread pool.

                +

                Type Parameters

                • 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 structured-cloneable data.

                  +

                Parameters

                • min: number

                  Minimum number of threads which are always active.

                • max: number

                  Maximum number of threads that can be created by this pool.

                • filePath: string

                  Path to an implementation of a ThreadWorker file, which can be relative or absolute.

                • opts: ThreadPoolOptions = {}

                  Options for this dynamic thread pool.

                  -

                Returns DynamicThreadPool<Data, Response>

              Properties

              destroying: boolean

              Whether the pool is destroying or not.

              -
              emitter?: EventEmitterAsyncResource
              filePath: string

              Path to the worker file.

              -
              maximumNumberOfWorkers?: number

              Maximum number of workers that this pool manages.

              -
              minimumNumberOfWorkers: number

              Minimum number of workers that this pool manages.

              -
              opts: PoolOptions<Worker>

              Options for the pool.

              -
              promiseResponseMap: Map<
                  `${string}-${string}-${string}-${string}-${string}`,
                  PromiseResponseWrapper<Response>,
              > = ...

              The task execution response promise map:

              +

              Returns DynamicThreadPool<Data, Response>

              Properties

              destroying: boolean

              Whether the pool is destroying or not.

              +
              emitter?: EventEmitterAsyncResource
              filePath: string

              Path to the worker file.

              +
              maximumNumberOfWorkers?: number

              Maximum number of workers that this pool manages.

              +
              minimumNumberOfWorkers: number

              Minimum number of workers that this pool manages.

              +
              opts: PoolOptions<Worker>

              Options for the pool.

              +
              promiseResponseMap: Map<
                  `${string}-${string}-${string}-${string}-${string}`,
                  PromiseResponseWrapper<Response>,
              > = ...

              The task execution response promise map:

              • key: The message id of each submitted task.
              • value: An object that contains task's worker node key, execution response promise resolve and reject callbacks, async resource.

              When we receive a message from the worker, we get a map entry with the promise resolve/reject bound to the message id.

              -
              started: boolean

              Whether the pool is started or not.

              -
              starting: boolean

              Whether the pool is starting or not.

              -
              workerChoiceStrategiesContext?: WorkerChoiceStrategiesContext<
                  Worker,
                  Data,
                  Response,
              >

              Worker choice strategies context referencing worker choice algorithms implementation.

              -
              workerNodes: IWorkerNode<Worker, Data>[] = []

              Accessors

              started: boolean

              Whether the pool is started or not.

              +
              starting: boolean

              Whether the pool is starting or not.

              +
              workerChoiceStrategiesContext?: WorkerChoiceStrategiesContext<
                  Worker,
                  Data,
                  Response,
              >

              Worker choice strategies context referencing worker choice algorithms implementation.

              +
              workerNodes: IWorkerNode<Worker, Data>[] = []

              Accessors

              • get backPressure(): boolean

                Whether the pool is back pressured or not.

                Returns boolean

                The pool back pressure boolean status.

                -
              • get busy(): boolean

                Whether the pool is busy or not.

                Returns boolean

                The pool busyness boolean status.

                -
              • get type(): "fixed" | "dynamic"

                The pool type.

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

                -

                Returns "fixed" | "dynamic"

              • get worker(): "cluster" | "thread"

                The worker type.

                -

                Returns "cluster" | "thread"

              Methods

              • Hook executed after the worker task execution. +

                Returns "fixed" | "dynamic"

              • get worker(): "cluster" | "thread"

                The worker type.

                +

                Returns "cluster" | "thread"

              Methods

              • Method hooked up after a worker node has been newly created. +

              • message: MessageValue<Response>

                The received message.

                +

              Returns void

              Returns void

              Returns void

              Returns void

              Returns Promise<void>

              Returns void

              Returns void

              Returns void

              Returns void

              +
              diff --git a/docs/classes/src.FixedClusterPool.html b/docs/classes/src.FixedClusterPool.html index 0e4bd38b6..1265c2945 100644 --- a/docs/classes/src.FixedClusterPool.html +++ b/docs/classes/src.FixedClusterPool.html @@ -1,9 +1,9 @@ -FixedClusterPool | poolifier - v5.1.7
              poolifier - v5.1.7
                Preparing search index...

                Class FixedClusterPool<Data, Response>

                A cluster pool with a fixed number of workers.

                +FixedClusterPool | poolifier - v5.2.0
                poolifier - v5.2.0
                  Preparing search index...

                  Class FixedClusterPool<Data, Response>

                  A cluster pool with a fixed number of workers.

                  2.0.0

                  Type Parameters

                  • 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 structured-cloneable data.

                    -

                  Hierarchy (View Summary)

                  Index

                  Constructors

                  Hierarchy (View Summary)

                  Index

                  Constructors

                  • Constructs a new poolifier fixed cluster pool.

                    -

                    Type Parameters

                    • Data = unknown
                    • Response = unknown

                    Parameters

                    • numberOfWorkers: number

                      Number of workers for this pool.

                      +

                  Constructors

                  • Constructs a new poolifier fixed cluster pool.

                    +

                    Type Parameters

                    • 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 structured-cloneable data.

                      +

                    Parameters

                    • numberOfWorkers: number

                      Number of workers for this pool.

                    • filePath: string

                      Path to an implementation of a ClusterWorker file, which can be relative or absolute.

                    • opts: ClusterPoolOptions = {}

                      Options for this fixed cluster pool.

                    • OptionalmaximumNumberOfWorkers: number

                      The maximum number of workers for this pool.

                      -

                    Returns FixedClusterPool<Data, Response>

                  Properties

                  destroying: boolean

                  Whether the pool is destroying or not.

                  -
                  emitter?: EventEmitterAsyncResource
                  filePath: string

                  Path to the worker file.

                  -
                  maximumNumberOfWorkers?: number

                  Maximum number of workers that this pool manages.

                  -
                  minimumNumberOfWorkers: number

                  Minimum number of workers that this pool manages.

                  -
                  opts: PoolOptions<Worker>

                  Options for the pool.

                  -
                  promiseResponseMap: Map<
                      `${string}-${string}-${string}-${string}-${string}`,
                      PromiseResponseWrapper<Response>,
                  > = ...

                  The task execution response promise map:

                  +

                  Returns FixedClusterPool<Data, Response>

                  Properties

                  destroying: boolean

                  Whether the pool is destroying or not.

                  +
                  emitter?: EventEmitterAsyncResource
                  filePath: string

                  Path to the worker file.

                  +
                  maximumNumberOfWorkers?: number

                  Maximum number of workers that this pool manages.

                  +
                  minimumNumberOfWorkers: number

                  Minimum number of workers that this pool manages.

                  +
                  opts: PoolOptions<Worker>

                  Options for the pool.

                  +
                  promiseResponseMap: Map<
                      `${string}-${string}-${string}-${string}-${string}`,
                      PromiseResponseWrapper<Response>,
                  > = ...

                  The task execution response promise map:

                  • key: The message id of each submitted task.
                  • value: An object that contains task's worker node key, execution response promise resolve and reject callbacks, async resource.

                  When we receive a message from the worker, we get a map entry with the promise resolve/reject bound to the message id.

                  -
                  started: boolean

                  Whether the pool is started or not.

                  -
                  starting: boolean

                  Whether the pool is starting or not.

                  -
                  workerChoiceStrategiesContext?: WorkerChoiceStrategiesContext<
                      Worker,
                      Data,
                      Response,
                  >

                  Worker choice strategies context referencing worker choice algorithms implementation.

                  -
                  workerNodes: IWorkerNode<Worker, Data>[] = []

                  Accessors

                  started: boolean

                  Whether the pool is started or not.

                  +
                  starting: boolean

                  Whether the pool is starting or not.

                  +
                  workerChoiceStrategiesContext?: WorkerChoiceStrategiesContext<
                      Worker,
                      Data,
                      Response,
                  >

                  Worker choice strategies context referencing worker choice algorithms implementation.

                  +
                  workerNodes: IWorkerNode<Worker, Data>[] = []

                  Accessors

                  • get backPressure(): boolean

                    Whether the pool is back pressured or not.

                    Returns boolean

                    The pool back pressure boolean status.

                    -
                  • get busy(): boolean

                    Whether the pool is busy or not.

                    Returns boolean

                    The pool busyness boolean status.

                    -
                  • get type(): "fixed" | "dynamic"

                    The pool type.

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

                    -

                    Returns "fixed" | "dynamic"

                  • get worker(): "cluster" | "thread"

                    The worker type.

                    -

                    Returns "cluster" | "thread"

                  Methods

                  • Hook executed after the worker task execution. +

                    Returns "fixed" | "dynamic"

                  • get worker(): "cluster" | "thread"

                    The worker type.

                    +

                    Returns "cluster" | "thread"

                  Methods

                  • Method hooked up after a worker node has been newly created. +

                  • message: MessageValue<Response>

                    The received message.

                    +

                  Returns void

                  Returns void

                  Returns void

                  Returns void

                  Returns Promise<void>

                  Returns void

                  Returns void

                  Returns void

                  Returns void

                  +
                  diff --git a/docs/classes/src.FixedThreadPool.html b/docs/classes/src.FixedThreadPool.html index 29eeb779f..d7bc8153b 100644 --- a/docs/classes/src.FixedThreadPool.html +++ b/docs/classes/src.FixedThreadPool.html @@ -1,9 +1,9 @@ -FixedThreadPool | poolifier - v5.1.7
                  poolifier - v5.1.7
                    Preparing search index...

                    Class FixedThreadPool<Data, Response>

                    A thread pool with a fixed number of threads.

                    +FixedThreadPool | poolifier - v5.2.0
                    poolifier - v5.2.0
                      Preparing search index...

                      Class FixedThreadPool<Data, Response>

                      A thread pool with a fixed number of threads.

                      0.0.1

                      Type Parameters

                      • 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 structured-cloneable data.

                        -

                      Hierarchy (View Summary)

                      Index

                      Constructors

                      Hierarchy (View Summary)

                      Index

                      Constructors

                      • Constructs a new poolifier fixed thread pool.

                        -

                        Type Parameters

                        • Data = unknown
                        • Response = unknown

                        Parameters

                        • numberOfThreads: number

                          Number of threads for this pool.

                          +

                      Constructors

                      • Constructs a new poolifier fixed thread pool.

                        +

                        Type Parameters

                        • 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 structured-cloneable data.

                          +

                        Parameters

                        • numberOfThreads: number

                          Number of threads for this pool.

                        • filePath: string

                          Path to an implementation of a ThreadWorker file, which can be relative or absolute.

                        • opts: ThreadPoolOptions = {}

                          Options for this fixed thread pool.

                        • OptionalmaximumNumberOfThreads: number

                          The maximum number of threads for this pool.

                          -

                        Returns FixedThreadPool<Data, Response>

                      Properties

                      destroying: boolean

                      Whether the pool is destroying or not.

                      -
                      emitter?: EventEmitterAsyncResource
                      filePath: string

                      Path to the worker file.

                      -
                      maximumNumberOfWorkers?: number

                      Maximum number of workers that this pool manages.

                      -
                      minimumNumberOfWorkers: number

                      Minimum number of workers that this pool manages.

                      -
                      opts: PoolOptions<Worker>

                      Options for the pool.

                      -
                      promiseResponseMap: Map<
                          `${string}-${string}-${string}-${string}-${string}`,
                          PromiseResponseWrapper<Response>,
                      > = ...

                      The task execution response promise map:

                      +

                      Returns FixedThreadPool<Data, Response>

                      Properties

                      destroying: boolean

                      Whether the pool is destroying or not.

                      +
                      emitter?: EventEmitterAsyncResource
                      filePath: string

                      Path to the worker file.

                      +
                      maximumNumberOfWorkers?: number

                      Maximum number of workers that this pool manages.

                      +
                      minimumNumberOfWorkers: number

                      Minimum number of workers that this pool manages.

                      +
                      opts: PoolOptions<Worker>

                      Options for the pool.

                      +
                      promiseResponseMap: Map<
                          `${string}-${string}-${string}-${string}-${string}`,
                          PromiseResponseWrapper<Response>,
                      > = ...

                      The task execution response promise map:

                      • key: The message id of each submitted task.
                      • value: An object that contains task's worker node key, execution response promise resolve and reject callbacks, async resource.

                      When we receive a message from the worker, we get a map entry with the promise resolve/reject bound to the message id.

                      -
                      started: boolean

                      Whether the pool is started or not.

                      -
                      starting: boolean

                      Whether the pool is starting or not.

                      -
                      workerChoiceStrategiesContext?: WorkerChoiceStrategiesContext<
                          Worker,
                          Data,
                          Response,
                      >

                      Worker choice strategies context referencing worker choice algorithms implementation.

                      -
                      workerNodes: IWorkerNode<Worker, Data>[] = []

                      Accessors

                      started: boolean

                      Whether the pool is started or not.

                      +
                      starting: boolean

                      Whether the pool is starting or not.

                      +
                      workerChoiceStrategiesContext?: WorkerChoiceStrategiesContext<
                          Worker,
                          Data,
                          Response,
                      >

                      Worker choice strategies context referencing worker choice algorithms implementation.

                      +
                      workerNodes: IWorkerNode<Worker, Data>[] = []

                      Accessors

                      • get backPressure(): boolean

                        Whether the pool is back pressured or not.

                        Returns boolean

                        The pool back pressure boolean status.

                        -
                      • get busy(): boolean

                        Whether the pool is busy or not.

                        Returns boolean

                        The pool busyness boolean status.

                        -
                      • get type(): "fixed" | "dynamic"

                        The pool type.

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

                        -

                        Returns "fixed" | "dynamic"

                      • get worker(): "cluster" | "thread"

                        The worker type.

                        -

                        Returns "cluster" | "thread"

                      Methods

                      • Hook executed after the worker task execution. +

                        Returns "fixed" | "dynamic"

                      • get worker(): "cluster" | "thread"

                        The worker type.

                        +

                        Returns "cluster" | "thread"

                      Methods

                      • Method hooked up after a worker node has been newly created. +

                      • message: MessageValue<Response>

                        The received message.

                        +

                      Returns void

                      Returns void

                      Returns void

                      Returns void

                      Returns Promise<void>

                      Returns void

                      Returns void

                      Returns void

                      Returns void

                      +
                      diff --git a/docs/classes/src.ThreadWorker.html b/docs/classes/src.ThreadWorker.html index 7b45cc372..68e4e99a4 100644 --- a/docs/classes/src.ThreadWorker.html +++ b/docs/classes/src.ThreadWorker.html @@ -1,4 +1,4 @@ -ThreadWorker | poolifier - v5.1.7
                      poolifier - v5.1.7
                        Preparing search index...

                        Class ThreadWorker<Data, Response>

                        A thread worker used by a poolifier ThreadPool.

                        +ThreadWorker | poolifier - v5.2.0
                        poolifier - v5.2.0
                          Preparing search index...

                          Class ThreadWorker<Data, Response>

                          A thread worker used by a poolifier ThreadPool.

                          When this worker is inactive for more than the given maxInactiveTime, it will send a termination request to its main thread.

                          If you use a DynamicThreadPool the extra workers that were created will be terminated, @@ -7,7 +7,7 @@ but the minimum number of workers will be guaranteed.

                          0.0.1

                          Type Parameters

                          • Data = unknown

                            Type of data this worker receives from pool's execution. This can only be structured-cloneable data.

                          • Response = unknown

                            Type of response the worker sends back to the main thread. This can only be structured-cloneable data.

                            -

                          Hierarchy (View Summary)

                          Index

                          Constructors

                          Hierarchy (View Summary)

                          Index

                          Constructors

                          Properties

                          activeInterval? isMain lastTaskTimestamp @@ -32,54 +32,56 @@ but the minimum number of workers will be guaranteed.

                          sendTaskFunctionsPropertiesToMainWorker sendToMainWorker setDefaultTaskFunction -

                          Constructors

                          Constructors

                          Properties

                          activeInterval?: Timeout

                          Handler id of the activeInterval worker activity check.

                          -
                          isMain: boolean | undefined

                          Whether this is the main worker or not.

                          -
                          lastTaskTimestamp: number

                          Timestamp of the last task processed by this worker.

                          -
                          opts: WorkerOptions = DEFAULT_WORKER_OPTIONS

                          Options for the worker.

                          -
                          statistics?: WorkerStatistics

                          Performance statistics computation requirements.

                          -
                          taskAbortFunctions: Map<
                              `${string}-${string}-${string}-${string}-${string}`,
                              () => void,
                          >

                          Task abort functions processed by the worker when task operation 'abort' is received.

                          -
                          taskFunctions: Map<string, TaskFunctionObject<Data, Response>>

                          Task function object(s) processed by the worker when the pool's execute method is invoked.

                          -

                          Accessors

                          Methods

                          Returns ThreadWorker<Data, Response>

                          Properties

                          activeInterval?: Timeout

                          Handler id of the activeInterval worker activity check.

                          +
                          isMain: boolean | undefined

                          Whether this is the main worker or not.

                          +
                          lastTaskTimestamp: number

                          Timestamp of the last task processed by this worker.

                          +
                          opts: WorkerOptions = DEFAULT_WORKER_OPTIONS

                          Options for the worker.

                          +
                          statistics?: WorkerStatistics

                          Performance statistics computation requirements.

                          +
                          taskAbortFunctions: Map<
                              `${string}-${string}-${string}-${string}-${string}`,
                              () => void,
                          >

                          Task abort functions processed by the worker when task operation 'abort' is received.

                          +
                          taskFunctions: Map<string, TaskFunctionObject<Data, Response>>

                          Task function object(s) processed by the worker when the pool's execute method is invoked.

                          +

                          Accessors

                          Methods

                          • Handles a worker error.

                            Parameters

                            • error: Error

                              The error raised by the worker.

                            Returns { aborted: boolean; error: Error; message: string; stack?: string }

                            The worker error object.

                            -
                          +
                          diff --git a/docs/documents/api.html b/docs/documents/api.html index 65d1a85f4..402ffed23 100644 --- a/docs/documents/api.html +++ b/docs/documents/api.html @@ -1,4 +1,6 @@ -api | poolifier - v5.1.7
                          poolifier - v5.1.7
                            Preparing search index...

                            API

                              +api | poolifier - v5.2.0
                              poolifier - v5.2.0
                                Preparing search index...

                                API

                                + + -

                                numberOfThreads/numberOfWorkers (mandatory) Number of workers for this pool.
                                +

                                + +

                                numberOfThreads/numberOfWorkers (mandatory) Number of workers for this pool.
                                filePath (mandatory) Path to a file with a worker implementation.
                                opts (optional) An object with the pool options properties described below.

                                -

                                min (mandatory) Same as FixedThreadPool/FixedClusterPool numberOfThreads/numberOfWorkers, this number of workers will be always active.
                                +

                                +

                                min (mandatory) Same as FixedThreadPool/FixedClusterPool numberOfThreads/numberOfWorkers, this number of workers will be always active.
                                max (mandatory) Max number of workers that this pool can contain, the newly created workers will die after a threshold (default is 1 minute, you can override it in your worker implementation).
                                filePath (mandatory) Path to a file with a worker implementation.
                                opts (optional) An object with the pool options properties described below.

                                -

                                data (optional) An object that you want to pass to your worker task function implementation.
                                +

                                +

                                data (optional) An object that you want to pass to your worker task function implementation.
                                name (optional) A string with the task function name that you want to execute on the worker. Default: 'default'
                                abortSignal (optional) An abort signal to abort the task function execution.
                                transferList (optional) An array of transferable objects that you want to transfer to your ThreadWorker worker implementation.

                                This method is available on both pool implementations and returns a promise with the task function execution response.

                                -

                                data An iterable of objects that you want to pass to your worker task function implementation.
                                +

                                +

                                data An iterable of objects that you want to pass to your worker task function implementation.
                                name (optional) A string with the task function name that you want to execute on the worker. Default: 'default'
                                abortSignals (optional) An iterable of AbortSignal to abort the matching object task function execution.
                                transferList (optional) An array of transferable objects that you want to transfer to your ThreadWorker worker implementation.

                                This method is available on both pool implementations and returns a promise with the task function execution responses array.

                                -

                                This method is available on both pool implementations and will start the minimum number of workers.

                                -

                                This method is available on both pool implementations and will call the terminate method on each worker.

                                -

                                name (mandatory) The task function name.

                                + +

                                This method is available on both pool implementations and will start the minimum number of workers.

                                + +

                                This method is available on both pool implementations and will call the terminate method on each worker.

                                + +

                                name (mandatory) The task function name.

                                This method is available on both pool implementations and returns a boolean.

                                -

                                name (mandatory) The task function name.
                                -fn (mandatory) The task function (data?: Data) => Response | Promise<Response> or task function object { taskFunction: (data?: Data) => Response | Promise<Response>, priority?: number, strategy?: WorkerChoiceStrategy }. Priority range is the same as Unix nice levels.

                                + +

                                name (mandatory) The task function name.
                                +fn (mandatory) The task function (data?: Data) => Response | Promise<Response> or task function object { taskFunction: (data?: Data) => Response | Promise<Response>, priority?: number, strategy?: WorkerChoiceStrategy, workerNodeKeys?: number[] }. Priority range is the same as Unix nice levels. workerNodeKeys is an array of worker node keys to restrict task execution to specific workers (worker node affinity).

                                + +
                                  +
                                • Worker node keys are validated at registration time against the pool's maximum size (maximumNumberOfWorkers ?? minimumNumberOfWorkers).
                                • +
                                • The number of worker node keys cannot exceed the pool's maximum size (maximumNumberOfWorkers ?? minimumNumberOfWorkers).
                                • +
                                • In dynamic pools, you can reference worker node keys up to the maximum pool size. Workers that don't exist yet are automatically created when a task targeting them is executed.
                                • +
                                • At execution time, if no specified worker is ready, selection retries until one becomes available or retries are exhausted.
                                • +

                                This method is available on both pool implementations and returns a boolean promise.

                                -

                                name (mandatory) The task function name.

                                + +

                                name (mandatory) The task function name.

                                This method is available on both pool implementations and returns a boolean promise.

                                -

                                This method is available on both pool implementations and returns an array of the task function properties.

                                -

                                name (mandatory) The task function name.

                                + +

                                This method is available on both pool implementations and returns an array of the task function properties.

                                + +

                                name (mandatory) The task function name.

                                This method is available on both pool implementations and returns a boolean promise.

                                -

                                An object with these properties:

                                + +

                                An object with these properties:

                                • onlineHandler (optional) - A function that will listen for online event on each worker.
                                  @@ -141,7 +163,9 @@ Properties:

                                  settings (optional) - An object with the cluster settings. See cluster for more details.

                                -

                                taskFunctions (mandatory) The task function or task functions object Record<string, (data?: Data) => Response | Promise<Response> | { taskFunction: (data?: Data) => Response | Promise<Response>, priority?: number, strategy?: WorkerChoiceStrategy }> that you want to execute on the worker. Priority range is the same as Unix nice levels.
                                +

                                + +

                                taskFunctions (mandatory) The task function or task functions object Record<string, (data?: Data) => Response | Promise<Response> | { taskFunction: (data?: Data) => Response | Promise<Response>, priority?: number, strategy?: WorkerChoiceStrategy, workerNodeKeys?: number[] }> that you want to execute on the worker. Priority range is the same as Unix nice levels. workerNodeKeys is an array of worker node keys to restrict task execution to specific workers (worker node affinity). See Worker Node Affinity Notes above for validation behavior.
                                opts (optional) An object with these properties:

                                • @@ -163,14 +187,19 @@ Default: 60000

                                  Default: () => {}

                                -

                                name (mandatory) The task function name.

                                + +

                                name (mandatory) The task function name.

                                This method is available on both worker implementations and returns { status: boolean, error?: Error }.

                                -

                                name (mandatory) The task function name.
                                -fn (mandatory) The task function (data?: Data) => Response | Promise<Response> or task function object { taskFunction: (data?: Data) => Response | Promise<Response>, priority?: number, strategy?: WorkerChoiceStrategy }. Priority range is the same as Unix nice levels.

                                + +

                                name (mandatory) The task function name.
                                +fn (mandatory) The task function (data?: Data) => Response | Promise<Response> or task function object { taskFunction: (data?: Data) => Response | Promise<Response>, priority?: number, strategy?: WorkerChoiceStrategy, workerNodeKeys?: number[] }. Priority range is the same as Unix nice levels. workerNodeKeys is an array of worker node keys to restrict task execution to specific workers (worker node affinity). See Worker Node Affinity Notes above for validation behavior.

                                This method is available on both worker implementations and returns { status: boolean, error?: Error }.

                                -

                                name (mandatory) The task function name.

                                + +

                                name (mandatory) The task function name.

                                This method is available on both worker implementations and returns { status: boolean, error?: Error }.

                                -

                                This method is available on both worker implementations and returns an array of the task function properties.

                                -

                                name (mandatory) The task function name.

                                + +

                                This method is available on both worker implementations and returns an array of the task function properties.

                                + +

                                name (mandatory) The task function name.

                                This method is available on both worker implementations and returns { status: boolean, error?: Error }.

                                -
                                +
                              diff --git a/docs/documents/general-guidelines.html b/docs/documents/general-guidelines.html index d3d90e2ba..525b4a8ca 100644 --- a/docs/documents/general-guidelines.html +++ b/docs/documents/general-guidelines.html @@ -1,11 +1,14 @@ -general-guidelines | poolifier - v5.1.7
                              poolifier - v5.1.7
                                Preparing search index...

                                General guidelines

                                Performance is one of the main target of these worker pool implementations, poolifier team wants to have a strong focus on this.
                                +general-guidelines | poolifier - v5.2.0

                                poolifier - v5.2.0
                                  Preparing search index...

                                  General guidelines

                                  +

                                  Performance is one of the main target of these worker pool implementations, poolifier team wants to have a strong focus on this.
                                  Poolifier already has benchmarks where you can find some comparisons.

                                  -
                                    + + -

                                    Before to jump into each poolifier pool type, let highlight that Node.js comes with a thread pool already, the libuv thread pool where some particular tasks already run by default.
                                    +

                                    +

                                    Before to jump into each poolifier pool type, let highlight that Node.js comes with a thread pool already, the libuv thread pool where some particular tasks already run by default.
                                    Please take a look at which tasks run on the libuv thread pool.

                                    If your task runs on libuv thread pool, you can try to:

                                      @@ -15,16 +18,18 @@ Please take a look at Cluster vs Threads worker pools

                                      If your task does not run into libuv thread pool and is CPU intensive then poolifier thread pools (FixedThreadPool and DynamicThreadPool) are suggested to run CPU intensive tasks, you can still run I/O intensive tasks into thread pools, but performance enhancement is expected to be minimal.
                                      +

                                      +

                                      If your task does not run into libuv thread pool and is CPU intensive then poolifier thread pools (FixedThreadPool and DynamicThreadPool) are suggested to run CPU intensive tasks, you can still run I/O intensive tasks into thread pools, but performance enhancement is expected to be minimal.
                                      Thread pools are built on top of Node.js worker_threads module.

                                      If your task does not run into libuv thread pool and is I/O intensive then poolifier cluster pools (FixedClusterPool and DynamicClusterPool) are suggested to run I/O intensive tasks, again you can still run CPU intensive tasks into cluster pools, but performance enhancement is expected to be minimal.
                                      Consider that by default Node.js already has great performance for I/O tasks (asynchronous I/O).
                                      Cluster pools are built on top of Node.js cluster module.

                                      If your task contains code that runs on libuv plus code that is CPU intensive or I/O intensive you either split it either combine more strategies (i.e. tune the number of libuv threads and use cluster/thread pools).
                                      But in general, always profile your application.

                                      -

                                      To choose your pool consider first that with a FixedThreadPool/FixedClusterPool or a DynamicThreadPool/DynamicClusterPool your application memory footprint will increase.
                                      +

                                      +

                                      To choose your pool consider first that with a FixedThreadPool/FixedClusterPool or a DynamicThreadPool/DynamicClusterPool your application memory footprint will increase.
                                      By doing so, your application will be ready to execute in parallel more tasks, but during idle time your application will consume more memory.
                                      One good choice from poolifier team point of view is to profile your application using a fixed or dynamic worker pool, and analyze your application metrics when you increase/decrease the number of workers.
                                      For example you could keep the memory footprint low by choosing a DynamicThreadPool/DynamicClusterPool with a minimum of 5 workers, and allowing it to create new workers until a maximum of 50 workers if needed. This is the advantage of using a DynamicThreadPool/DynamicClusterPool.
                                      But in general, always profile your application.

                                      -
                                  +
                                  diff --git a/docs/documents/worker-choice-strategies.html b/docs/documents/worker-choice-strategies.html index fa3906d10..cc0844386 100644 --- a/docs/documents/worker-choice-strategies.html +++ b/docs/documents/worker-choice-strategies.html @@ -1,5 +1,7 @@ -worker-choice-strategies | poolifier - v5.1.7
                                  poolifier - v5.1.7
                                    Preparing search index...

                                    Worker choice strategies

                                    All duration or timestamp are expressed in milliseconds.

                                    -
                                      +worker-choice-strategies | poolifier - v5.2.0
                                      poolifier - v5.2.0
                                        Preparing search index...

                                        Worker choice strategies

                                        +

                                        All duration or timestamp are expressed in milliseconds.

                                        + + -

                                        Its goal is to distribute the load evenly across all workers. To achieve this, the strategy keeps track of the simple moving average task execution time for each worker and assigns the next task to the worker with the lowest task end prediction time: task_end_prediction = max(current_time, task_end_prediction) + simple_moving_average_task_execution_time.
                                        +

                                        + +

                                        Its goal is to distribute the load evenly across all workers. To achieve this, the strategy keeps track of the simple moving average task execution time for each worker and assigns the next task to the worker with the lowest task end prediction time: task_end_prediction = max(current_time, task_end_prediction) + simple_moving_average_task_execution_time.
                                        By default, the strategy uses the simple moving average task execution time for each worker but it can be configured to use the simple moving average task event loop utilization (ELU) active time instead.

                                        -

                                        The worker weights are maximum tasks execution time. Once the worker has reached its maximum tasks execution time, the next task is assigned to the next worker. The default worker weight is the same for each and computed given the CPU cores speed and theirs numbers.

                                        -

                                        The worker weights are maximum tasks execution time. The rounds are the deduplicated worker weights in ascending order.
                                        +

                                        +

                                        The worker weights are maximum tasks execution time. Once the worker has reached its maximum tasks execution time, the next task is assigned to the next worker. The default worker weight is the same for each and computed given the CPU cores speed and theirs numbers.

                                        + +

                                        The worker weights are maximum tasks execution time. The rounds are the deduplicated worker weights in ascending order.
                                        During a round, if the worker weight is superior or equal to the current round weight and its tasks execution time is inferior to the current round weight, the task is assigned to the worker. Once all workers weight have been tested, the next round starts.
                                        The default worker weights is the same for each and computed given the CPU cores speed and theirs numbers. So the default 'rounds' consists of a unique worker weight.

                                        -

                                        Worker choice strategies enable only the statistics that are needed to choose the next worker to avoid unnecessary overhead.

                                        -

                                        Strategies using the simple moving average task execution time for each worker can use the simple moving median instead. Simple moving median is more robust to outliers and can be used to avoid assigning tasks to workers that are currently overloaded.

                                        -
                                        + +

                                        Worker choice strategies enable only the statistics that are needed to choose the next worker to avoid unnecessary overhead.

                                        + +

                                        Strategies using the simple moving average task execution time for each worker can use the simple moving median instead. Simple moving median is more robust to outliers and can be used to avoid assigning tasks to workers that are currently overloaded.

                                        +
                                      diff --git a/docs/functions/src.availableParallelism.html b/docs/functions/src.availableParallelism.html index 4bd14167c..df4cd498a 100644 --- a/docs/functions/src.availableParallelism.html +++ b/docs/functions/src.availableParallelism.html @@ -1,4 +1,4 @@ -availableParallelism | poolifier - v5.1.7
                                      poolifier - v5.1.7
                                        Preparing search index...

                                        Function availableParallelism

                                        • Returns safe host OS optimized estimate of the default amount of parallelism a pool should use. +availableParallelism | poolifier - v5.2.0

                                          poolifier - v5.2.0
                                            Preparing search index...

                                            Function availableParallelism

                                            • Returns safe host OS optimized estimate of the default amount of parallelism a pool should use. Always returns a value greater than zero.

                                              Returns number

                                              The host OS optimized maximum pool size.

                                              -
                                            +
                                          diff --git a/docs/hierarchy.html b/docs/hierarchy.html index 2c1086ae7..e3ee2cac7 100644 --- a/docs/hierarchy.html +++ b/docs/hierarchy.html @@ -1 +1 @@ -poolifier - v5.1.7
                                          poolifier - v5.1.7
                                            Preparing search index...
                                            +poolifier - v5.2.0
                                            poolifier - v5.2.0
                                              Preparing search index...
                                              diff --git a/docs/index.html b/docs/index.html index 79cc52c77..1ee477ba1 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1 +1 @@ -poolifier - v5.1.7
                                              poolifier - v5.1.7
                                                Preparing search index...

                                                poolifier - v5.1.7

                                                Documents

                                                api
                                                general-guidelines
                                                worker-choice-strategies

                                                Modules

                                                src
                                                +poolifier - v5.2.0
                                                poolifier - v5.2.0
                                                  Preparing search index...

                                                  poolifier - v5.2.0

                                                  Documents

                                                  api
                                                  general-guidelines
                                                  worker-choice-strategies

                                                  Modules

                                                  src
                                                  diff --git a/docs/interfaces/src.AbstractPool.html b/docs/interfaces/src.AbstractPool.html index cc22339d3..ac5405a9a 100644 --- a/docs/interfaces/src.AbstractPool.html +++ b/docs/interfaces/src.AbstractPool.html @@ -1,8 +1,8 @@ -AbstractPool | poolifier - v5.1.7
                                                  poolifier - v5.1.7
                                                    Preparing search index...

                                                    Interface AbstractPool<Worker, Data, Response>Abstract

                                                    Base class that implements some shared logic for all poolifier pools.

                                                    +AbstractPool | poolifier - v5.2.0
                                                    poolifier - v5.2.0
                                                      Preparing search index...

                                                      Interface AbstractPool<Worker, Data, Response>Abstract

                                                      Base class that implements some shared logic for all poolifier pools.

                                                      interface AbstractPool<
                                                          Worker extends IWorker,
                                                          Data = unknown,
                                                          Response = unknown,
                                                      > {
                                                          destroying: boolean;
                                                          emitter?: EventEmitterAsyncResource;
                                                          filePath: string;
                                                          maximumNumberOfWorkers?: number;
                                                          minimumNumberOfWorkers: number;
                                                          opts: PoolOptions<Worker>;
                                                          promiseResponseMap: Map<
                                                              `${string}-${string}-${string}-${string}-${string}`,
                                                              PromiseResponseWrapper<Response>,
                                                          >;
                                                          started: boolean;
                                                          starting: boolean;
                                                          workerChoiceStrategiesContext?: WorkerChoiceStrategiesContext<
                                                              Worker,
                                                              Data,
                                                              Response,
                                                          >;
                                                          workerNodes: IWorkerNode<Worker, Data>[];
                                                          get backPressure(): boolean;
                                                          get busy(): boolean;
                                                          get info(): PoolInfo;
                                                          get type(): "fixed" | "dynamic";
                                                          get worker(): "cluster" | "thread";
                                                          addTaskFunction(
                                                              name: string,
                                                              fn: TaskFunction<Data, Response> | TaskFunctionObject<Data, Response>,
                                                          ): Promise<boolean>;
                                                          afterTaskExecutionHook(
                                                              workerNodeKey: number,
                                                              message: MessageValue<Response>,
                                                          ): void;
                                                          afterWorkerNodeSetup(workerNodeKey: number): void;
                                                          beforeTaskExecutionHook(workerNodeKey: number, task: Task<Data>): void;
                                                          checkAndEmitDynamicWorkerCreationEvents(): void;
                                                          checkAndEmitDynamicWorkerDestructionEvents(): void;
                                                          createAndSetupDynamicWorkerNode(): number;
                                                          createAndSetupWorkerNode(): number;
                                                          deregisterWorkerMessageListener<Message>(
                                                              workerNodeKey: number,
                                                              listener: (message: MessageValue<Message>) => void,
                                                          ): void;
                                                          destroy(): Promise<void>;
                                                          destroyWorkerNode(workerNodeKey: number): Promise<void>;
                                                          enableTasksQueue(
                                                              enable: boolean,
                                                              tasksQueueOptions?: TasksQueueOptions,
                                                          ): void;
                                                          execute(
                                                              data?: Data,
                                                              name?: string,
                                                              abortSignal?: AbortSignal,
                                                              transferList?: readonly Transferable[],
                                                          ): Promise<Response>;
                                                          flagWorkerNodeAsNotReady(workerNodeKey: number): void;
                                                          flushTasksQueue(workerNodeKey: number): number;
                                                          getWorkerInfo(workerNodeKey: number): WorkerInfo | undefined;
                                                          hasTaskFunction(name: string): boolean;
                                                          internalBackPressure(): boolean;
                                                          internalBusy(): boolean;
                                                          isMain(): boolean;
                                                          listTaskFunctionsProperties(): TaskFunctionProperties[];
                                                          mapExecute(
                                                              data: Iterable<Data>,
                                                              name?: string,
                                                              abortSignals?: Iterable<AbortSignal, any, any>,
                                                              transferList?: readonly Transferable[],
                                                          ): Promise<Response[]>;
                                                          registerOnceWorkerMessageListener<Message>(
                                                              workerNodeKey: number,
                                                              listener: (message: MessageValue<Message>) => void,
                                                          ): void;
                                                          registerWorkerMessageListener<Message>(
                                                              workerNodeKey: number,
                                                              listener: (message: MessageValue<Message>) => void,
                                                          ): void;
                                                          removeTaskFunction(name: string): Promise<boolean>;
                                                          sendStartupMessageToWorker(workerNodeKey: number): void;
                                                          sendToWorker(
                                                              workerNodeKey: number,
                                                              message: MessageValue<Data>,
                                                              transferList?: readonly Transferable[],
                                                          ): void;
                                                          setDefaultTaskFunction(name: string): Promise<boolean>;
                                                          setTasksQueueOptions(
                                                              tasksQueueOptions: TasksQueueOptions | undefined,
                                                          ): void;
                                                          setupHook(): void;
                                                          setWorkerChoiceStrategy(
                                                              workerChoiceStrategy:
                                                                  | "FAIR_SHARE"
                                                                  | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                  | "LEAST_BUSY"
                                                                  | "LEAST_ELU"
                                                                  | "LEAST_USED"
                                                                  | "ROUND_ROBIN"
                                                                  | "WEIGHTED_ROUND_ROBIN",
                                                              workerChoiceStrategyOptions?: WorkerChoiceStrategyOptions,
                                                          ): void;
                                                          setWorkerChoiceStrategyOptions(
                                                              workerChoiceStrategyOptions: WorkerChoiceStrategyOptions | undefined,
                                                          ): boolean;
                                                          shallCreateDynamicWorker(): boolean;
                                                          start(): void;
                                                          workerMessageListener(message: MessageValue<Response>): void;
                                                      }

                                                      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 structured-cloneable data.

                                                      • Response = unknown

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

                                                        -

                                                      Hierarchy (View Summary)

                                                      Implements

                                                      Index

                                                      Properties

                                                      Hierarchy (View Summary)

                                                      Implements

                                                      Index

                                                      Properties

                                                      destroying: boolean

                                                      Whether the pool is destroying or not.

                                                      -
                                                      emitter?: EventEmitterAsyncResource
                                                      filePath: string

                                                      Path to the worker file.

                                                      -
                                                      maximumNumberOfWorkers?: number

                                                      Maximum number of workers that this pool manages.

                                                      -
                                                      minimumNumberOfWorkers: number

                                                      Minimum number of workers that this pool manages.

                                                      -

                                                      Options for the pool.

                                                      -
                                                      promiseResponseMap: Map<
                                                          `${string}-${string}-${string}-${string}-${string}`,
                                                          PromiseResponseWrapper<Response>,
                                                      > = ...

                                                      The task execution response promise map:

                                                      +
                                                      emitter?: EventEmitterAsyncResource
                                                      filePath: string

                                                      Path to the worker file.

                                                      +
                                                      maximumNumberOfWorkers?: number

                                                      Maximum number of workers that this pool manages.

                                                      +
                                                      minimumNumberOfWorkers: number

                                                      Minimum number of workers that this pool manages.

                                                      +

                                                      Options for the pool.

                                                      +
                                                      promiseResponseMap: Map<
                                                          `${string}-${string}-${string}-${string}-${string}`,
                                                          PromiseResponseWrapper<Response>,
                                                      > = ...

                                                      The task execution response promise map:

                                                      • key: The message id of each submitted task.
                                                      • value: An object that contains task's worker node key, execution response promise resolve and reject callbacks, async resource.

                                                      When we receive a message from the worker, we get a map entry with the promise resolve/reject bound to the message id.

                                                      -
                                                      started: boolean

                                                      Whether the pool is started or not.

                                                      -
                                                      starting: boolean

                                                      Whether the pool is starting or not.

                                                      -
                                                      workerChoiceStrategiesContext?: WorkerChoiceStrategiesContext<
                                                          Worker,
                                                          Data,
                                                          Response,
                                                      >

                                                      Worker choice strategies context referencing worker choice algorithms implementation.

                                                      -
                                                      workerNodes: IWorkerNode<Worker, Data>[] = []

                                                      Accessors

                                                      started: boolean

                                                      Whether the pool is started or not.

                                                      +
                                                      starting: boolean

                                                      Whether the pool is starting or not.

                                                      +
                                                      workerChoiceStrategiesContext?: WorkerChoiceStrategiesContext<
                                                          Worker,
                                                          Data,
                                                          Response,
                                                      >

                                                      Worker choice strategies context referencing worker choice algorithms implementation.

                                                      +
                                                      workerNodes: IWorkerNode<Worker, Data>[] = []

                                                      Accessors

                                                      • get backPressure(): boolean

                                                        Whether the pool is back pressured or not.

                                                        Returns boolean

                                                        The pool back pressure boolean status.

                                                        -
                                                      • get type(): "fixed" | "dynamic"

                                                        The pool type.

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

                                                        -

                                                        Returns "fixed" | "dynamic"

                                                      Methods

                                                      Methods

                                                      • Method hooked up after a worker node has been newly created. +

                                                      Returns void

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

                                                        Parameters

                                                        • workerNodeKey: number

                                                          The newly created worker node key.

                                                          -

                                                        Returns void

                                                      • Hook executed before the worker task execution. +

                                                      Returns void

                                                      Returns void

                                                      Returns void

                                                      Returns Promise<void>

                                                      Returns void

                                                      Returns void

                                                      Returns void

                                                      Returns void

                                                      +

                                                      Returns void

                                                      diff --git a/docs/interfaces/src.AbstractWorker.html b/docs/interfaces/src.AbstractWorker.html index c5c97f538..15d855724 100644 --- a/docs/interfaces/src.AbstractWorker.html +++ b/docs/interfaces/src.AbstractWorker.html @@ -1,8 +1,8 @@ -AbstractWorker | poolifier - v5.1.7
                                                      poolifier - v5.1.7
                                                        Preparing search index...

                                                        Interface AbstractWorker<MainWorker, Data, Response>Abstract

                                                        Base class that implements some shared logic for all poolifier workers.

                                                        +AbstractWorker | poolifier - v5.2.0
                                                        poolifier - v5.2.0
                                                          Preparing search index...

                                                          Interface AbstractWorker<MainWorker, Data, Response>Abstract

                                                          Base class that implements some shared logic for all poolifier workers.

                                                          interface AbstractWorker<
                                                              MainWorker extends MessagePort
                                                              | Worker,
                                                              Data = unknown,
                                                              Response = unknown,
                                                          > {
                                                              activeInterval?: Timeout;
                                                              id: number;
                                                              isMain: boolean | undefined;
                                                              lastTaskTimestamp: number;
                                                              opts: WorkerOptions;
                                                              statistics?: WorkerStatistics;
                                                              taskAbortFunctions: Map<
                                                                  `${string}-${string}-${string}-${string}-${string}`,
                                                                  () => void,
                                                              >;
                                                              taskFunctions: Map<string, TaskFunctionObject<Data, Response>>;
                                                              addTaskFunction(
                                                                  name: string,
                                                                  fn: TaskFunctionObject<Data, Response> | TaskFunction<Data, Response>,
                                                              ): TaskFunctionOperationResult;
                                                              getMainWorker(): MainWorker;
                                                              handleError(
                                                                  error: Error,
                                                              ): { aborted: boolean; error?: Error; message: string; stack?: string };
                                                              handleKillMessage(message: MessageValue<Data>): void;
                                                              handleReadyMessage(message: MessageValue<Data>): void;
                                                              handleTaskFunctionOperationMessage(message: MessageValue<Data>): void;
                                                              hasTaskFunction(name: string): TaskFunctionOperationResult;
                                                              listTaskFunctionsProperties(): TaskFunctionProperties[];
                                                              messageListener(message: MessageValue<Data>): void;
                                                              removeTaskFunction(name: string): TaskFunctionOperationResult;
                                                              run(task: Task<Data>): void;
                                                              runAsync(fn: TaskAsyncFunction<Data, Response>, task: Task<Data>): void;
                                                              runSync(fn: TaskSyncFunction<Data, Response>, task: Task<Data>): void;
                                                              sendTaskFunctionsPropertiesToMainWorker(): void;
                                                              sendToMainWorker(message: MessageValue<Response, Data>): void;
                                                              setDefaultTaskFunction(name: string): TaskFunctionOperationResult;
                                                          }

                                                          Type Parameters

                                                          • MainWorker extends MessagePort | Worker

                                                            Type of main worker.

                                                          • Data = unknown

                                                            Type of data this worker receives from pool's execution. This can only be structured-cloneable data.

                                                          • Response = unknown

                                                            Type of response the worker sends back to the main worker. This can only be structured-cloneable data.

                                                            -

                                                          Hierarchy (View Summary)

                                                          Index

                                                          Properties

                                                          Hierarchy (View Summary)

                                                          Index

                                                          Properties

                                                          activeInterval?: Timeout

                                                          Handler id of the activeInterval worker activity check.

                                                          -
                                                          id: number

                                                          Worker id.

                                                          -
                                                          isMain: boolean | undefined

                                                          Whether this is the main worker or not.

                                                          -
                                                          lastTaskTimestamp: number

                                                          Timestamp of the last task processed by this worker.

                                                          -
                                                          opts: WorkerOptions = DEFAULT_WORKER_OPTIONS

                                                          Options for the worker.

                                                          -
                                                          statistics?: WorkerStatistics

                                                          Performance statistics computation requirements.

                                                          -
                                                          taskAbortFunctions: Map<
                                                              `${string}-${string}-${string}-${string}-${string}`,
                                                              () => void,
                                                          >

                                                          Task abort functions processed by the worker when task operation 'abort' is received.

                                                          -
                                                          taskFunctions: Map<string, TaskFunctionObject<Data, Response>>

                                                          Task function object(s) processed by the worker when the pool's execute method is invoked.

                                                          -

                                                          Methods

                                                          id: number

                                                          Worker id.

                                                          +
                                                          isMain: boolean | undefined

                                                          Whether this is the main worker or not.

                                                          +
                                                          lastTaskTimestamp: number

                                                          Timestamp of the last task processed by this worker.

                                                          +
                                                          opts: WorkerOptions = DEFAULT_WORKER_OPTIONS

                                                          Options for the worker.

                                                          +
                                                          statistics?: WorkerStatistics

                                                          Performance statistics computation requirements.

                                                          +
                                                          taskAbortFunctions: Map<
                                                              `${string}-${string}-${string}-${string}-${string}`,
                                                              () => void,
                                                          >

                                                          Task abort functions processed by the worker when task operation 'abort' is received.

                                                          +
                                                          taskFunctions: Map<string, TaskFunctionObject<Data, Response>>

                                                          Task function object(s) processed by the worker when the pool's execute method is invoked.

                                                          +

                                                          Methods

                                                          • Handles a worker error.

                                                            +
                                                          • Handles a worker error.

                                                            Parameters

                                                            • error: Error

                                                              The error raised by the worker.

                                                            Returns { aborted: boolean; error?: Error; message: string; stack?: string }

                                                            The worker error object.

                                                            -
                                                          • Handles the ready message sent by the main worker.

                                                            +

                                                          Returns void

                                                          Returns void

                                                          Returns void

                                                          Returns void

                                                          Returns void

                                                          Returns void

                                                          Returns void

                                                          +
                                                          diff --git a/docs/interfaces/src.CircularBuffer.html b/docs/interfaces/src.CircularBuffer.html index de561ecd8..e8a6f28f8 100644 --- a/docs/interfaces/src.CircularBuffer.html +++ b/docs/interfaces/src.CircularBuffer.html @@ -1,20 +1,20 @@ -CircularBuffer | poolifier - v5.1.7
                                                          poolifier - v5.1.7
                                                            Preparing search index...

                                                            Interface CircularBufferInternal

                                                            Circular buffer designed for numbers.

                                                            -
                                                            interface CircularBuffer {
                                                                size: number;
                                                                clear(): void;
                                                                empty(): boolean;
                                                                full(): boolean;
                                                                get(): number | undefined;
                                                                put(number: number): void;
                                                                toArray(): number[];
                                                            }
                                                            Index

                                                            Properties

                                                            size +CircularBuffer | poolifier - v5.2.0
                                                            poolifier - v5.2.0
                                                              Preparing search index...

                                                              Interface CircularBufferInternal

                                                              Circular buffer designed for numbers.

                                                              +
                                                              interface CircularBuffer {
                                                                  size: number;
                                                                  clear(): void;
                                                                  empty(): boolean;
                                                                  full(): boolean;
                                                                  get(): number | undefined;
                                                                  put(number: number): void;
                                                                  toArray(): number[];
                                                              }
                                                              Index

                                                              Properties

                                                              Methods

                                                              Properties

                                                              size: number

                                                              Methods

                                                              • Checks whether the buffer is empty.

                                                                +

                                                              Properties

                                                              size: number

                                                              Methods

                                                              • Checks whether the buffer is empty.

                                                                Returns boolean

                                                                Whether the buffer is empty.

                                                                -
                                                              • Checks whether the buffer is full.

                                                                Returns boolean

                                                                Whether the buffer is full.

                                                                -
                                                              • Gets number from buffer.

                                                                Returns number | undefined

                                                                Number from buffer.

                                                                -
                                                              • Puts number into buffer.

                                                                Parameters

                                                                • number: number

                                                                  Number to put into buffer.

                                                                  -

                                                                Returns void

                                                              • Returns buffer as numbers' array.

                                                                +

                                                              Returns void

                                                              +
                                                              diff --git a/docs/interfaces/src.EventLoopUtilizationMeasurementStatistics.html b/docs/interfaces/src.EventLoopUtilizationMeasurementStatistics.html index df3756a11..56a9c35de 100644 --- a/docs/interfaces/src.EventLoopUtilizationMeasurementStatistics.html +++ b/docs/interfaces/src.EventLoopUtilizationMeasurementStatistics.html @@ -1,6 +1,6 @@ -EventLoopUtilizationMeasurementStatistics | poolifier - v5.1.7
                                                              poolifier - v5.1.7
                                                                Preparing search index...

                                                                Interface EventLoopUtilizationMeasurementStatisticsInternal

                                                                Event loop utilization measurement statistics.

                                                                -
                                                                interface EventLoopUtilizationMeasurementStatistics {
                                                                    active: MeasurementStatistics;
                                                                    count?: number;
                                                                    idle: MeasurementStatistics;
                                                                    utilization?: number;
                                                                }
                                                                Index

                                                                Properties

                                                                active +EventLoopUtilizationMeasurementStatistics | poolifier - v5.2.0
                                                                poolifier - v5.2.0
                                                                  Preparing search index...

                                                                  Interface EventLoopUtilizationMeasurementStatisticsInternal

                                                                  Event loop utilization measurement statistics.

                                                                  +
                                                                  interface EventLoopUtilizationMeasurementStatistics {
                                                                      active: MeasurementStatistics;
                                                                      count?: number;
                                                                      idle: MeasurementStatistics;
                                                                      utilization?: number;
                                                                  }
                                                                  Index

                                                                  Properties

                                                                  count?: number
                                                                  utilization?: number
                                                                  +

                                                                  Properties

                                                                  count?: number
                                                                  utilization?: number
                                                                  diff --git a/docs/interfaces/src.FixedQueueNode.html b/docs/interfaces/src.FixedQueueNode.html index 00c59a17a..360b0c1d0 100644 --- a/docs/interfaces/src.FixedQueueNode.html +++ b/docs/interfaces/src.FixedQueueNode.html @@ -1,6 +1,6 @@ -FixedQueueNode | poolifier - v5.1.7
                                                                  poolifier - v5.1.7
                                                                    Preparing search index...

                                                                    Interface FixedQueueNode<T>Internal

                                                                    Fixed queue node.

                                                                    +FixedQueueNode | poolifier - v5.2.0
                                                                    poolifier - v5.2.0
                                                                      Preparing search index...

                                                                      Interface FixedQueueNode<T>Internal

                                                                      Fixed queue node.

                                                                      interface FixedQueueNode<T> {
                                                                          data: T;
                                                                          priority: number;
                                                                          timestamp: number;
                                                                      }

                                                                      Type Parameters

                                                                      • T

                                                                        Type of fixed queue node data.

                                                                        -
                                                                      Index

                                                                      Properties

                                                                      Index

                                                                      Properties

                                                                      Properties

                                                                      data: T
                                                                      priority: number
                                                                      timestamp: number
                                                                      +

                                                                      Properties

                                                                      data: T
                                                                      priority: number
                                                                      timestamp: number
                                                                      diff --git a/docs/interfaces/src.IFixedQueue.html b/docs/interfaces/src.IFixedQueue.html index d3f43a6cf..8313333cd 100644 --- a/docs/interfaces/src.IFixedQueue.html +++ b/docs/interfaces/src.IFixedQueue.html @@ -1,6 +1,6 @@ -IFixedQueue | poolifier - v5.1.7
                                                                      poolifier - v5.1.7
                                                                        Preparing search index...

                                                                        Interface IFixedQueue<T>Internal

                                                                        Fixed queue.

                                                                        +IFixedQueue | poolifier - v5.2.0
                                                                        poolifier - v5.2.0
                                                                          Preparing search index...

                                                                          Interface IFixedQueue<T>Internal

                                                                          Fixed queue.

                                                                          interface IFixedQueue<T> {
                                                                              "[iterator]": () => Iterator<T>;
                                                                              capacity: number;
                                                                              clear: () => void;
                                                                              delete: (data: T) => boolean;
                                                                              dequeue: () => T | undefined;
                                                                              empty: () => boolean;
                                                                              enqueue: (data: T, priority?: number) => number;
                                                                              full: () => boolean;
                                                                              get: (index: number) => T | undefined;
                                                                              nodeArray: (FixedQueueNode<T> | undefined)[];
                                                                              size: number;
                                                                          }

                                                                          Type Parameters

                                                                          • T

                                                                            Type of fixed queue data.

                                                                            -
                                                                          Index

                                                                          Properties

                                                                          Index

                                                                          Properties

                                                                          [iterator] capacity clear delete @@ -14,25 +14,25 @@

                                                                          Properties

                                                                          "[iterator]": () => Iterator<T>

                                                                          Returns an iterator for the fixed queue.

                                                                          Type Declaration

                                                                            • (): Iterator<T>
                                                                            • Returns Iterator<T>

                                                                              An iterator for the fixed queue.

                                                                          capacity: number

                                                                          The fixed queue capacity.

                                                                          -
                                                                          clear: () => void

                                                                          Clears the fixed queue.

                                                                          -
                                                                          delete: (data: T) => boolean

                                                                          Deletes the given data from the fixed priority queue.

                                                                          +
                                                                          capacity: number

                                                                          The fixed queue capacity.

                                                                          +
                                                                          clear: () => void

                                                                          Clears the fixed queue.

                                                                          +
                                                                          delete: (data: T) => boolean

                                                                          Deletes the given data from the fixed priority queue.

                                                                          Type Declaration

                                                                            • (data: T): boolean
                                                                            • Parameters

                                                                              • data: T

                                                                                Data to delete.

                                                                              Returns boolean

                                                                              true if the data was deleted, false otherwise.

                                                                              -
                                                                          dequeue: () => T | undefined

                                                                          Dequeue data from the fixed queue.

                                                                          +
                                                                          dequeue: () => T | undefined

                                                                          Dequeue data from the fixed queue.

                                                                          Type Declaration

                                                                            • (): T | undefined
                                                                            • Returns T | undefined

                                                                              The dequeued data or undefined if the fixed queue is empty.

                                                                              -
                                                                          empty: () => boolean

                                                                          Checks if the fixed queue is empty.

                                                                          +
                                                                          empty: () => boolean

                                                                          Checks if the fixed queue is empty.

                                                                          Type Declaration

                                                                            • (): boolean
                                                                            • Returns boolean

                                                                              true if the fixed queue is empty, false otherwise.

                                                                              -
                                                                          enqueue: (data: T, priority?: number) => number

                                                                          Enqueue data into the fixed queue.

                                                                          +
                                                                          enqueue: (data: T, priority?: number) => number

                                                                          Enqueue data into the fixed queue.

                                                                          Type Declaration

                                                                            • (data: T, priority?: number): number
                                                                            • Parameters

                                                                              • data: T

                                                                                Data to enqueue.

                                                                              • Optionalpriority: number

                                                                                Priority of the data. Lower values have higher priority.

                                                                              Returns number

                                                                              The new size of the fixed queue.

                                                                          If the fixed queue is full.

                                                                          -
                                                                          full: () => boolean

                                                                          Checks if the fixed queue is full.

                                                                          +
                                                                          full: () => boolean

                                                                          Checks if the fixed queue is full.

                                                                          Type Declaration

                                                                            • (): boolean
                                                                            • Returns boolean

                                                                              true if the fixed queue is full, false otherwise.

                                                                              -
                                                                          get: (index: number) => T | undefined

                                                                          Gets data from the fixed queue.

                                                                          +
                                                                          get: (index: number) => T | undefined

                                                                          Gets data from the fixed queue.

                                                                          Type Declaration

                                                                            • (index: number): T | undefined
                                                                            • Parameters

                                                                              • index: number

                                                                                The index of the data to get.

                                                                              Returns T | undefined

                                                                              The data at the index or undefined if the fixed queue is empty or the index is out of bounds.

                                                                              -
                                                                          nodeArray: (FixedQueueNode<T> | undefined)[]

                                                                          The fixed queue node array.

                                                                          -
                                                                          size: number

                                                                          The fixed queue size.

                                                                          -
                                                                          +
                                                                          nodeArray: (FixedQueueNode<T> | undefined)[]

                                                                          The fixed queue node array.

                                                                          +
                                                                          size: number

                                                                          The fixed queue size.

                                                                          +
                                                                          diff --git a/docs/interfaces/src.IPool.html b/docs/interfaces/src.IPool.html index 9a1211fa7..9d83685f8 100644 --- a/docs/interfaces/src.IPool.html +++ b/docs/interfaces/src.IPool.html @@ -1,8 +1,8 @@ -IPool | poolifier - v5.1.7
                                                                          poolifier - v5.1.7
                                                                            Preparing search index...

                                                                            Interface IPool<Worker, Data, Response>

                                                                            Contract definition for a poolifier pool.

                                                                            +IPool | poolifier - v5.2.0
                                                                            poolifier - v5.2.0
                                                                              Preparing search index...

                                                                              Interface IPool<Worker, Data, Response>

                                                                              Contract definition for a poolifier pool.

                                                                              interface IPool<Worker extends IWorker, Data = unknown, Response = unknown> {
                                                                                  addTaskFunction: (
                                                                                      name: string,
                                                                                      fn: TaskFunction<Data, Response> | TaskFunctionObject<Data, Response>,
                                                                                  ) => Promise<boolean>;
                                                                                  destroy: () => Promise<void>;
                                                                                  emitter?: EventEmitterAsyncResource;
                                                                                  enableTasksQueue: (
                                                                                      enable: boolean,
                                                                                      tasksQueueOptions?: TasksQueueOptions,
                                                                                  ) => void;
                                                                                  execute: (
                                                                                      data?: Data,
                                                                                      name?: string,
                                                                                      abortSignal?: AbortSignal,
                                                                                      transferList?: readonly Transferable[],
                                                                                  ) => Promise<Response>;
                                                                                  hasTaskFunction: (name: string) => boolean;
                                                                                  info: PoolInfo;
                                                                                  listTaskFunctionsProperties: () => TaskFunctionProperties[];
                                                                                  mapExecute: (
                                                                                      data: Iterable<Data>,
                                                                                      name?: string,
                                                                                      abortSignals?: Iterable<AbortSignal, any, any>,
                                                                                      transferList?: readonly Transferable[],
                                                                                  ) => Promise<Response[]>;
                                                                                  removeTaskFunction: (name: string) => Promise<boolean>;
                                                                                  setDefaultTaskFunction: (name: string) => Promise<boolean>;
                                                                                  setTasksQueueOptions: (tasksQueueOptions: TasksQueueOptions) => void;
                                                                                  setWorkerChoiceStrategy: (
                                                                                      workerChoiceStrategy:
                                                                                          | "FAIR_SHARE"
                                                                                          | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                          | "LEAST_BUSY"
                                                                                          | "LEAST_ELU"
                                                                                          | "LEAST_USED"
                                                                                          | "ROUND_ROBIN"
                                                                                          | "WEIGHTED_ROUND_ROBIN",
                                                                                      workerChoiceStrategyOptions?: WorkerChoiceStrategyOptions,
                                                                                  ) => void;
                                                                                  setWorkerChoiceStrategyOptions: (
                                                                                      workerChoiceStrategyOptions: WorkerChoiceStrategyOptions,
                                                                                  ) => boolean;
                                                                                  start: () => void;
                                                                                  workerNodes: IWorkerNode<Worker, Data>[];
                                                                              }

                                                                              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 structured-cloneable data.

                                                                              • Response = unknown

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

                                                                                -

                                                                              Implemented by

                                                                              Index

                                                                              Properties

                                                                              Implemented by

                                                                              Index

                                                                              Properties

                                                                              addTaskFunction destroy emitter? enableTasksQueue @@ -25,8 +25,8 @@ If a task function with the same name already exists, it will be overwritten.

                                                                              Returns Promise<boolean>

                                                                              true if the task function was added, false otherwise.

                                                                              If the name parameter is not a string or an empty string.

                                                                              If the fn parameter is not a function or task function object.

                                                                              -
                                                                              destroy: () => Promise<void>

                                                                              Terminates all workers in this pool.

                                                                              -
                                                                              emitter?: EventEmitterAsyncResource

                                                                              Pool event emitter integrated with async resource. +

                                                                              destroy: () => Promise<void>

                                                                              Terminates all workers in this pool.

                                                                              +
                                                                              emitter?: EventEmitterAsyncResource

                                                                              Pool event emitter integrated with async resource. The async tracking tooling identifier is poolifier:<PoolType>-<WorkerType>-pool.

                                                                              Events that can currently be listened to:

                                                                                @@ -42,41 +42,41 @@ The async tracking tooling identifier is poolifier:<PoolType>-<Wo
                                                                              • 'backPressure': Emitted when the number of workers created in the pool has reached the maximum size expected and are back pressured (i.e. their tasks queue is full: queue size >= maximum queue size).
                                                                              • 'backPressureEnd': Emitted when the number of workers created in the pool has reached the maximum size expected and are no longer back pressured (i.e. their tasks queue is no longer full: queue size < maximum queue size).
                                                                              -
                                                                              enableTasksQueue: (
                                                                                  enable: boolean,
                                                                                  tasksQueueOptions?: TasksQueueOptions,
                                                                              ) => void

                                                                              Enables/disables the worker node tasks queue in this pool.

                                                                              +
                                                                              enableTasksQueue: (
                                                                                  enable: boolean,
                                                                                  tasksQueueOptions?: TasksQueueOptions,
                                                                              ) => void

                                                                              Enables/disables the worker node tasks queue in this pool.

                                                                              Type Declaration

                                                                                • (enable: boolean, tasksQueueOptions?: TasksQueueOptions): void
                                                                                • Parameters

                                                                                  • enable: boolean

                                                                                    Whether to enable or disable the worker node tasks queue.

                                                                                  • OptionaltasksQueueOptions: TasksQueueOptions

                                                                                    The worker node tasks queue options.

                                                                                    -

                                                                                  Returns void

                                                                              execute: (
                                                                                  data?: Data,
                                                                                  name?: string,
                                                                                  abortSignal?: AbortSignal,
                                                                                  transferList?: readonly Transferable[],
                                                                              ) => Promise<Response>

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

                                                                              +

                                                                              Returns void

                                                                              execute: (
                                                                                  data?: Data,
                                                                                  name?: string,
                                                                                  abortSignal?: AbortSignal,
                                                                                  transferList?: readonly Transferable[],
                                                                              ) => Promise<Response>

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

                                                                              Type Declaration

                                                                                • (
                                                                                      data?: Data,
                                                                                      name?: string,
                                                                                      abortSignal?: AbortSignal,
                                                                                      transferList?: readonly Transferable[],
                                                                                  ): Promise<Response>
                                                                                • Parameters

                                                                                  • Optionaldata: Data

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

                                                                                  • Optionalname: string

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

                                                                                  • OptionalabortSignal: AbortSignal

                                                                                    The optional AbortSignal to abort the task.

                                                                                  • OptionaltransferList: readonly Transferable[]

                                                                                    The optional array of transferable objects to transfer ownership of. Ownership of the transferred objects is given to the chosen pool's worker_threads worker and they should not be used in the main thread afterwards.

                                                                                  Returns Promise<Response>

                                                                                  Promise with a task function response that will be fulfilled when the task is completed.

                                                                                  -
                                                                              hasTaskFunction: (name: string) => boolean

                                                                              Whether the specified task function exists in this pool.

                                                                              +
                                                                              hasTaskFunction: (name: string) => boolean

                                                                              Whether the specified task function exists in this pool.

                                                                              Type Declaration

                                                                                • (name: string): boolean
                                                                                • Parameters

                                                                                  • name: string

                                                                                    The name of the task function.

                                                                                  Returns boolean

                                                                                  true if the task function exists, false otherwise.

                                                                                  -
                                                                              info: PoolInfo

                                                                              Pool information.

                                                                              -
                                                                              listTaskFunctionsProperties: () => TaskFunctionProperties[]

                                                                              Lists the properties of task functions available in this pool.

                                                                              +
                                                                              info: PoolInfo

                                                                              Pool information.

                                                                              +
                                                                              listTaskFunctionsProperties: () => TaskFunctionProperties[]

                                                                              Lists the properties of task functions available in this pool.

                                                                              Type Declaration

                                                                              mapExecute: (
                                                                                  data: Iterable<Data>,
                                                                                  name?: string,
                                                                                  abortSignals?: Iterable<AbortSignal, any, any>,
                                                                                  transferList?: readonly Transferable[],
                                                                              ) => Promise<Response[]>

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

                                                                              +
                                                                              mapExecute: (
                                                                                  data: Iterable<Data>,
                                                                                  name?: string,
                                                                                  abortSignals?: Iterable<AbortSignal, any, any>,
                                                                                  transferList?: readonly Transferable[],
                                                                              ) => Promise<Response[]>

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

                                                                              Type Declaration

                                                                                • (
                                                                                      data: Iterable<Data>,
                                                                                      name?: string,
                                                                                      abortSignals?: Iterable<AbortSignal, any, any>,
                                                                                      transferList?: readonly Transferable[],
                                                                                  ): Promise<Response[]>
                                                                                • Parameters

                                                                                  • data: Iterable<Data>

                                                                                    The tasks iterable input data for the specified task function. This can only be an iterable of structured-cloneable data.

                                                                                  • Optionalname: string

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

                                                                                  • OptionalabortSignals: Iterable<AbortSignal, any, any>

                                                                                    The optional iterable of AbortSignal to abort the tasks iterable.

                                                                                  • OptionaltransferList: readonly Transferable[]

                                                                                    The optional array of transferable objects to transfer ownership of. Ownership of the transferred objects is given to the chosen pool's worker_threads worker and they should not be used in the main thread afterwards.

                                                                                  Returns Promise<Response[]>

                                                                                  Promise with an array of task function responses that will be fulfilled when the tasks are completed.

                                                                                  -
                                                                              removeTaskFunction: (name: string) => Promise<boolean>

                                                                              Removes a task function from this pool.

                                                                              +
                                                                              removeTaskFunction: (name: string) => Promise<boolean>

                                                                              Removes a task function from this pool.

                                                                              Type Declaration

                                                                                • (name: string): Promise<boolean>
                                                                                • Parameters

                                                                                  • name: string

                                                                                    The name of the task function.

                                                                                  Returns Promise<boolean>

                                                                                  true if the task function was removed, false otherwise.

                                                                                  -
                                                                              setDefaultTaskFunction: (name: string) => Promise<boolean>

                                                                              Sets the default task function in this pool.

                                                                              +
                                                                              setDefaultTaskFunction: (name: string) => Promise<boolean>

                                                                              Sets the default task function in this pool.

                                                                              Type Declaration

                                                                                • (name: string): Promise<boolean>
                                                                                • Parameters

                                                                                  • name: string

                                                                                    The name of the task function.

                                                                                  Returns Promise<boolean>

                                                                                  true if the default task function was set, false otherwise.

                                                                                  -
                                                                              setTasksQueueOptions: (tasksQueueOptions: TasksQueueOptions) => void

                                                                              Sets the worker node tasks queue options in this pool.

                                                                              +
                                                                              setTasksQueueOptions: (tasksQueueOptions: TasksQueueOptions) => void

                                                                              Sets the worker node tasks queue options in this pool.

                                                                              Type Declaration

                                                                              setWorkerChoiceStrategy: (
                                                                                  workerChoiceStrategy:
                                                                                      | "FAIR_SHARE"
                                                                                      | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                      | "LEAST_BUSY"
                                                                                      | "LEAST_ELU"
                                                                                      | "LEAST_USED"
                                                                                      | "ROUND_ROBIN"
                                                                                      | "WEIGHTED_ROUND_ROBIN",
                                                                                  workerChoiceStrategyOptions?: WorkerChoiceStrategyOptions,
                                                                              ) => void

                                                                              Sets the default worker choice strategy in this pool.

                                                                              +

                                                                              Returns void

                                                                              setWorkerChoiceStrategy: (
                                                                                  workerChoiceStrategy:
                                                                                      | "FAIR_SHARE"
                                                                                      | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                      | "LEAST_BUSY"
                                                                                      | "LEAST_ELU"
                                                                                      | "LEAST_USED"
                                                                                      | "ROUND_ROBIN"
                                                                                      | "WEIGHTED_ROUND_ROBIN",
                                                                                  workerChoiceStrategyOptions?: WorkerChoiceStrategyOptions,
                                                                              ) => void

                                                                              Sets the default worker choice strategy in this pool.

                                                                              Type Declaration

                                                                                • (
                                                                                      workerChoiceStrategy:
                                                                                          | "FAIR_SHARE"
                                                                                          | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                          | "LEAST_BUSY"
                                                                                          | "LEAST_ELU"
                                                                                          | "LEAST_USED"
                                                                                          | "ROUND_ROBIN"
                                                                                          | "WEIGHTED_ROUND_ROBIN",
                                                                                      workerChoiceStrategyOptions?: WorkerChoiceStrategyOptions,
                                                                                  ): void
                                                                                • Parameters

                                                                                  • workerChoiceStrategy:
                                                                                        | "FAIR_SHARE"
                                                                                        | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                        | "LEAST_BUSY"
                                                                                        | "LEAST_ELU"
                                                                                        | "LEAST_USED"
                                                                                        | "ROUND_ROBIN"
                                                                                        | "WEIGHTED_ROUND_ROBIN"

                                                                                    The default worker choice strategy.

                                                                                  • OptionalworkerChoiceStrategyOptions: WorkerChoiceStrategyOptions

                                                                                    The worker choice strategy options.

                                                                                    -

                                                                                  Returns void

                                                                              setWorkerChoiceStrategyOptions: (
                                                                                  workerChoiceStrategyOptions: WorkerChoiceStrategyOptions,
                                                                              ) => boolean

                                                                              Sets the worker choice strategy options in this pool.

                                                                              +

                                                                              Returns void

                                                                              setWorkerChoiceStrategyOptions: (
                                                                                  workerChoiceStrategyOptions: WorkerChoiceStrategyOptions,
                                                                              ) => boolean

                                                                              Sets the worker choice strategy options in this pool.

                                                                              Type Declaration

                                                                              start: () => void

                                                                              Starts the minimum number of workers in this pool.

                                                                              -
                                                                              workerNodes: IWorkerNode<Worker, Data>[]

                                                                              Pool worker nodes.

                                                                              -
                                                                              +
                                                                              start: () => void

                                                                              Starts the minimum number of workers in this pool.

                                                                              +
                                                                              workerNodes: IWorkerNode<Worker, Data>[]

                                                                              Pool worker nodes.

                                                                              +
                                                                              diff --git a/docs/interfaces/src.IWorker.html b/docs/interfaces/src.IWorker.html index f41b74fa9..4825e9b10 100644 --- a/docs/interfaces/src.IWorker.html +++ b/docs/interfaces/src.IWorker.html @@ -1,5 +1,5 @@ -IWorker | poolifier - v5.1.7
                                                                              poolifier - v5.1.7
                                                                                Preparing search index...

                                                                                Interface IWorker

                                                                                Worker interface.

                                                                                -
                                                                                interface IWorker {
                                                                                    disconnect?: () => void;
                                                                                    id?: number;
                                                                                    kill?: (signal?: string) => void;
                                                                                    on: (event: string, handler: EventHandler<IWorker>) => this;
                                                                                    once: (event: string, handler: EventHandler<IWorker>) => this;
                                                                                    terminate?: () => Promise<number>;
                                                                                    threadId?: number;
                                                                                    unref?: () => void;
                                                                                    "[captureRejectionSymbol]"?<K>(
                                                                                        error: Error,
                                                                                        event: string | symbol,
                                                                                        ...args: AnyRest,
                                                                                    ): void;
                                                                                    addListener<K>(
                                                                                        eventName: string | symbol,
                                                                                        listener: (...args: any[]) => void,
                                                                                    ): this;
                                                                                    emit<K>(eventName: string | symbol, ...args: AnyRest): boolean;
                                                                                    eventNames(): (string | symbol)[];
                                                                                    getMaxListeners(): number;
                                                                                    listenerCount<K>(eventName: string | symbol, listener?: Function): number;
                                                                                    listeners<K>(eventName: string | symbol): Function[];
                                                                                    off<K>(
                                                                                        eventName: string | symbol,
                                                                                        listener: (...args: any[]) => void,
                                                                                    ): this;
                                                                                    prependListener<K>(
                                                                                        eventName: string | symbol,
                                                                                        listener: (...args: any[]) => void,
                                                                                    ): this;
                                                                                    prependOnceListener<K>(
                                                                                        eventName: string | symbol,
                                                                                        listener: (...args: any[]) => void,
                                                                                    ): this;
                                                                                    rawListeners<K>(eventName: string | symbol): Function[];
                                                                                    removeAllListeners(eventName?: string | symbol): this;
                                                                                    removeListener<K>(
                                                                                        eventName: string | symbol,
                                                                                        listener: (...args: any[]) => void,
                                                                                    ): this;
                                                                                    setMaxListeners(n: number): this;
                                                                                }

                                                                                Hierarchy

                                                                                • EventEmitter
                                                                                  • IWorker
                                                                                Index

                                                                                Properties

                                                                                disconnect? +IWorker | poolifier - v5.2.0
                                                                                poolifier - v5.2.0
                                                                                  Preparing search index...

                                                                                  Interface IWorker

                                                                                  Worker interface.

                                                                                  +
                                                                                  interface IWorker {
                                                                                      disconnect?: () => void;
                                                                                      id?: number;
                                                                                      kill?: (signal?: string) => void;
                                                                                      on: (event: string, handler: EventHandler<IWorker>) => this;
                                                                                      once: (event: string, handler: EventHandler<IWorker>) => this;
                                                                                      terminate?: () => Promise<number>;
                                                                                      threadId?: number;
                                                                                      unref?: () => void;
                                                                                      "[captureRejectionSymbol]"?<K>(
                                                                                          error: Error,
                                                                                          event: string | symbol,
                                                                                          ...args: AnyRest,
                                                                                      ): void;
                                                                                      addListener<K>(
                                                                                          eventName: string | symbol,
                                                                                          listener: (...args: any[]) => void,
                                                                                      ): this;
                                                                                      emit<K>(eventName: string | symbol, ...args: AnyRest): boolean;
                                                                                      eventNames(): (string | symbol)[];
                                                                                      getMaxListeners(): number;
                                                                                      listenerCount<K>(eventName: string | symbol, listener?: Function): number;
                                                                                      listeners<K>(eventName: string | symbol): Function[];
                                                                                      off<K>(
                                                                                          eventName: string | symbol,
                                                                                          listener: (...args: any[]) => void,
                                                                                      ): this;
                                                                                      prependListener<K>(
                                                                                          eventName: string | symbol,
                                                                                          listener: (...args: any[]) => void,
                                                                                      ): this;
                                                                                      prependOnceListener<K>(
                                                                                          eventName: string | symbol,
                                                                                          listener: (...args: any[]) => void,
                                                                                      ): this;
                                                                                      rawListeners<K>(eventName: string | symbol): Function[];
                                                                                      removeAllListeners(eventName?: string | symbol): this;
                                                                                      removeListener<K>(
                                                                                          eventName: string | symbol,
                                                                                          listener: (...args: any[]) => void,
                                                                                      ): this;
                                                                                      setMaxListeners(n: number): this;
                                                                                  }

                                                                                  Hierarchy

                                                                                  • EventEmitter
                                                                                    • IWorker
                                                                                  Index

                                                                                  Properties

                                                                                  Properties

                                                                                  disconnect?: () => void

                                                                                  Cluster worker disconnect.

                                                                                  -
                                                                                  id?: number

                                                                                  Cluster worker id.

                                                                                  -
                                                                                  kill?: (signal?: string) => void

                                                                                  Cluster worker kill.

                                                                                  -
                                                                                  on: (event: string, handler: EventHandler<IWorker>) => this

                                                                                  Registers an event handler.

                                                                                  +
                                                                                  id?: number

                                                                                  Cluster worker id.

                                                                                  +
                                                                                  kill?: (signal?: string) => void

                                                                                  Cluster worker kill.

                                                                                  +
                                                                                  on: (event: string, handler: EventHandler<IWorker>) => this

                                                                                  Registers an event handler.

                                                                                  Type Declaration

                                                                                  once: (event: string, handler: EventHandler<IWorker>) => this

                                                                                  Registers once an event handler.

                                                                                  +

                                                                                  Returns this

                                                                                  once: (event: string, handler: EventHandler<IWorker>) => this

                                                                                  Registers once an event handler.

                                                                                  Type Declaration

                                                                                  terminate?: () => Promise<number>

                                                                                  Stop all JavaScript execution in the worker thread as soon as possible. +

                                                                                  Returns this

                                                                                  terminate?: () => Promise<number>

                                                                                  Stop all JavaScript execution in the worker thread as soon as possible. Returns a Promise for the exit code that is fulfilled when the 'exit' event is emitted.

                                                                                  -
                                                                                  threadId?: number

                                                                                  Worker thread worker id.

                                                                                  -
                                                                                  unref?: () => void

                                                                                  Calling unref() on a worker allows the thread to exit if this is the only +

                                                                                  threadId?: number

                                                                                  Worker thread worker id.

                                                                                  +
                                                                                  unref?: () => void

                                                                                  Calling unref() on a worker allows the thread to exit if this is the only active handle in the event system. If the worker is already unref()ed callingunref() again has no effect.

                                                                                  v10.5.0

                                                                                  -

                                                                                  Methods

                                                                                  • Type Parameters

                                                                                    • K

                                                                                    Parameters

                                                                                    • error: Error
                                                                                    • event: string | symbol
                                                                                    • ...args: AnyRest

                                                                                    Returns void

                                                                                  • Alias for emitter.on(eventName, listener).

                                                                                    +

                                                                                  Methods

                                                                                  • Type Parameters

                                                                                    • K

                                                                                    Parameters

                                                                                    • error: Error
                                                                                    • event: string | symbol
                                                                                    • ...args: AnyRest

                                                                                    Returns void

                                                                                  • Alias for emitter.on(eventName, listener).

                                                                                    Type Parameters

                                                                                    • K

                                                                                    Parameters

                                                                                    • eventName: string | symbol
                                                                                    • listener: (...args: any[]) => void

                                                                                    Returns this

                                                                                    v0.1.26

                                                                                    -
                                                                                  • Synchronously calls each of the listeners registered for the event named eventName, in the order they were registered, passing the supplied arguments +

                                                                                  • Synchronously calls each of the listeners registered for the event named eventName, in the order they were registered, passing the supplied arguments to each.

                                                                                    Returns true if the event had listeners, false otherwise.

                                                                                    import { EventEmitter } from 'node:events';
                                                                                    const myEmitter = new EventEmitter();

                                                                                    // First listener
                                                                                    myEmitter.on('event', function firstListener() {
                                                                                    console.log('Helloooo! first listener');
                                                                                    });
                                                                                    // Second listener
                                                                                    myEmitter.on('event', function secondListener(arg1, arg2) {
                                                                                    console.log(`event with parameters ${arg1}, ${arg2} in second listener`);
                                                                                    });
                                                                                    // Third listener
                                                                                    myEmitter.on('event', function thirdListener(...args) {
                                                                                    const parameters = args.join(', ');
                                                                                    console.log(`event with parameters ${parameters} in third listener`);
                                                                                    });

                                                                                    console.log(myEmitter.listeners('event'));

                                                                                    myEmitter.emit('event', 1, 2, 3, 4, 5);

                                                                                    // Prints:
                                                                                    // [
                                                                                    // [Function: firstListener],
                                                                                    // [Function: secondListener],
                                                                                    // [Function: thirdListener]
                                                                                    // ]
                                                                                    // Helloooo! first listener
                                                                                    // event with parameters 1, 2 in second listener
                                                                                    // event with parameters 1, 2, 3, 4, 5 in third listener

                                                                                    Type Parameters

                                                                                    • K

                                                                                    Parameters

                                                                                    • eventName: string | symbol
                                                                                    • ...args: AnyRest

                                                                                    Returns boolean

                                                                                    v0.1.26

                                                                                    -
                                                                                  • Returns an array listing the events for which the emitter has registered +

                                                                                  • Returns an array listing the events for which the emitter has registered listeners. The values in the array are strings or Symbols.

                                                                                    import { EventEmitter } from 'node:events';

                                                                                    const myEE = new EventEmitter();
                                                                                    myEE.on('foo', () => {});
                                                                                    myEE.on('bar', () => {});

                                                                                    const sym = Symbol('symbol');
                                                                                    myEE.on(sym, () => {});

                                                                                    console.log(myEE.eventNames());
                                                                                    // Prints: [ 'foo', 'bar', Symbol(symbol) ]

                                                                                    Returns (string | symbol)[]

                                                                                    v6.0.0

                                                                                    -
                                                                                  • Returns the current max listener value for the EventEmitter which is either +

                                                                                  • Returns the current max listener value for the EventEmitter which is either set by emitter.setMaxListeners(n) or defaults to EventEmitter.defaultMaxListeners.

                                                                                    Returns number

                                                                                    v1.0.0

                                                                                    -
                                                                                  • Returns the number of listeners listening for the event named eventName. +

                                                                                  • Returns the number of listeners listening for the event named eventName. If listener is provided, it will return how many times the listener is found in the list of the listeners of the event.

                                                                                    Type Parameters

                                                                                    • K

                                                                                    Parameters

                                                                                    • eventName: string | symbol

                                                                                      The name of the event being listened for

                                                                                    • Optionallistener: Function

                                                                                      The event handler function

                                                                                    Returns number

                                                                                    v3.2.0

                                                                                    -
                                                                                  • Returns a copy of the array of listeners for the event named eventName.

                                                                                    +
                                                                                  • Returns a copy of the array of listeners for the event named eventName.

                                                                                    server.on('connection', (stream) => {
                                                                                    console.log('someone connected!');
                                                                                    });
                                                                                    console.log(util.inspect(server.listeners('connection')));
                                                                                    // Prints: [ [Function] ]

                                                                                    Type Parameters

                                                                                    • K

                                                                                    Parameters

                                                                                    • eventName: string | symbol

                                                                                    Returns Function[]

                                                                                    v0.1.26

                                                                                    -
                                                                                  • Alias for emitter.removeListener().

                                                                                    +
                                                                                  • Alias for emitter.removeListener().

                                                                                    Type Parameters

                                                                                    • K

                                                                                    Parameters

                                                                                    • eventName: string | symbol
                                                                                    • listener: (...args: any[]) => void

                                                                                    Returns this

                                                                                    v10.0.0

                                                                                    -
                                                                                  • Adds the listener function to the beginning of the listeners array for the +

                                                                                  • Adds the listener function to the beginning of the listeners array for the event named eventName. No checks are made to see if the listener has already been added. Multiple calls passing the same combination of eventName and listener will result in the listener being added, and called, multiple times.

                                                                                    @@ -78,7 +78,7 @@ and listener will result in the listener being added,

                                                                                    Type Parameters

                                                                                    • K

                                                                                    Parameters

                                                                                    • eventName: string | symbol

                                                                                      The name of the event.

                                                                                    • listener: (...args: any[]) => void

                                                                                      The callback function

                                                                                    Returns this

                                                                                    v6.0.0

                                                                                    -
                                                                                  • Adds a one-timelistener function for the event named eventName to the beginning of the listeners array. The next time eventName is triggered, this +

                                                                                  • Adds a one-timelistener function for the event named eventName to the beginning of the listeners array. The next time eventName is triggered, this listener is removed, and then invoked.

                                                                                    server.prependOnceListener('connection', (stream) => {
                                                                                    console.log('Ah, we have our first user!');
                                                                                    });
                                                                                    @@ -87,19 +87,19 @@ listener is removed, and then invoked.

                                                                                    Type Parameters

                                                                                    • K

                                                                                    Parameters

                                                                                    • eventName: string | symbol

                                                                                      The name of the event.

                                                                                    • listener: (...args: any[]) => void

                                                                                      The callback function

                                                                                    Returns this

                                                                                    v6.0.0

                                                                                    -
                                                                                  • Returns a copy of the array of listeners for the event named eventName, +

                                                                                  • Returns a copy of the array of listeners for the event named eventName, including any wrappers (such as those created by .once()).

                                                                                    import { EventEmitter } from 'node:events';
                                                                                    const emitter = new EventEmitter();
                                                                                    emitter.once('log', () => console.log('log once'));

                                                                                    // Returns a new Array with a function `onceWrapper` which has a property
                                                                                    // `listener` which contains the original listener bound above
                                                                                    const listeners = emitter.rawListeners('log');
                                                                                    const logFnWrapper = listeners[0];

                                                                                    // Logs "log once" to the console and does not unbind the `once` event
                                                                                    logFnWrapper.listener();

                                                                                    // Logs "log once" to the console and removes the listener
                                                                                    logFnWrapper();

                                                                                    emitter.on('log', () => console.log('log persistently'));
                                                                                    // Will return a new Array with a single function bound by `.on()` above
                                                                                    const newListeners = emitter.rawListeners('log');

                                                                                    // Logs "log persistently" twice
                                                                                    newListeners[0]();
                                                                                    emitter.emit('log');

                                                                                    Type Parameters

                                                                                    • K

                                                                                    Parameters

                                                                                    • eventName: string | symbol

                                                                                    Returns Function[]

                                                                                    v9.4.0

                                                                                    -
                                                                                  • Removes all listeners, or those of the specified eventName.

                                                                                    +
                                                                                  • Removes all listeners, or those of the specified eventName.

                                                                                    It is bad practice to remove listeners added elsewhere in the code, particularly when the EventEmitter instance was created by some other component or module (e.g. sockets or file streams).

                                                                                    Returns a reference to the EventEmitter, so that calls can be chained.

                                                                                    Parameters

                                                                                    • OptionaleventName: string | symbol

                                                                                    Returns this

                                                                                    v0.1.26

                                                                                    -
                                                                                  • Removes the specified listener from the listener array for the event named eventName.

                                                                                    +
                                                                                  • Removes the specified listener from the listener array for the event named eventName.

                                                                                    const callback = (stream) => {
                                                                                    console.log('someone connected!');
                                                                                    };
                                                                                    server.on('connection', callback);
                                                                                    // ...
                                                                                    server.removeListener('connection', callback);
                                                                                    @@ -126,10 +126,10 @@ recently added instance. In the example the once('ping') listener i

                                                                                    Returns a reference to the EventEmitter, so that calls can be chained.

                                                                                    Type Parameters

                                                                                    • K

                                                                                    Parameters

                                                                                    • eventName: string | symbol
                                                                                    • listener: (...args: any[]) => void

                                                                                    Returns this

                                                                                    v0.1.26

                                                                                    -
                                                                                  • By default EventEmitters will print a warning if more than 10 listeners are +

                                                                                  • By default EventEmitters will print a warning if more than 10 listeners are added for a particular event. This is a useful default that helps finding memory leaks. The emitter.setMaxListeners() method allows the limit to be modified for this specific EventEmitter instance. The value can be set to Infinity (or 0) to indicate an unlimited number of listeners.

                                                                                    Returns a reference to the EventEmitter, so that calls can be chained.

                                                                                    Parameters

                                                                                    • n: number

                                                                                    Returns this

                                                                                    v0.3.5

                                                                                    -
                                                                                  +
                                                                                  diff --git a/docs/interfaces/src.IWorkerChoiceStrategy.html b/docs/interfaces/src.IWorkerChoiceStrategy.html index 4dc415c2f..c8a3c135d 100644 --- a/docs/interfaces/src.IWorkerChoiceStrategy.html +++ b/docs/interfaces/src.IWorkerChoiceStrategy.html @@ -1,5 +1,5 @@ -IWorkerChoiceStrategy | poolifier - v5.1.7
                                                                                  poolifier - v5.1.7
                                                                                    Preparing search index...

                                                                                    Interface IWorkerChoiceStrategyInternal

                                                                                    Worker choice strategy interface.

                                                                                    -
                                                                                    interface IWorkerChoiceStrategy {
                                                                                        choose: () => number | undefined;
                                                                                        name:
                                                                                            | "FAIR_SHARE"
                                                                                            | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                            | "LEAST_BUSY"
                                                                                            | "LEAST_ELU"
                                                                                            | "LEAST_USED"
                                                                                            | "ROUND_ROBIN"
                                                                                            | "WEIGHTED_ROUND_ROBIN";
                                                                                        remove: (workerNodeKey: number) => boolean;
                                                                                        reset: () => boolean;
                                                                                        retriesCount: number;
                                                                                        setOptions: (opts: WorkerChoiceStrategyOptions | undefined) => void;
                                                                                        strategyPolicy: StrategyPolicy;
                                                                                        taskStatisticsRequirements: TaskStatisticsRequirements;
                                                                                        update: (workerNodeKey: number) => boolean;
                                                                                    }
                                                                                    Index

                                                                                    Properties

                                                                                    choose +IWorkerChoiceStrategy | poolifier - v5.2.0
                                                                                    poolifier - v5.2.0
                                                                                      Preparing search index...

                                                                                      Interface IWorkerChoiceStrategyInternal

                                                                                      Worker choice strategy interface.

                                                                                      +
                                                                                      interface IWorkerChoiceStrategy {
                                                                                          choose: (workerNodeKeysSet?: ReadonlySet<number>) => number | undefined;
                                                                                          name:
                                                                                              | "FAIR_SHARE"
                                                                                              | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                              | "LEAST_BUSY"
                                                                                              | "LEAST_ELU"
                                                                                              | "LEAST_USED"
                                                                                              | "ROUND_ROBIN"
                                                                                              | "WEIGHTED_ROUND_ROBIN";
                                                                                          remove: (workerNodeKey: number) => boolean;
                                                                                          reset: () => boolean;
                                                                                          retriesCount: number;
                                                                                          setOptions: (opts: WorkerChoiceStrategyOptions | undefined) => void;
                                                                                          strategyPolicy: StrategyPolicy;
                                                                                          taskStatisticsRequirements: TaskStatisticsRequirements;
                                                                                          update: (workerNodeKey: number) => boolean;
                                                                                      }
                                                                                      Index

                                                                                      Properties

                                                                                      choose: () => number | undefined

                                                                                      Chooses a worker node in the pool and returns its key. -If no worker nodes are not eligible, undefined is returned. -If undefined is returned, the caller retry.

                                                                                      -

                                                                                      Type Declaration

                                                                                        • (): number | undefined
                                                                                        • Returns number | undefined

                                                                                          The worker node key or undefined.

                                                                                          -
                                                                                      name:
                                                                                          | "FAIR_SHARE"
                                                                                          | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                          | "LEAST_BUSY"
                                                                                          | "LEAST_ELU"
                                                                                          | "LEAST_USED"
                                                                                          | "ROUND_ROBIN"
                                                                                          | "WEIGHTED_ROUND_ROBIN"

                                                                                      The worker choice strategy name.

                                                                                      -
                                                                                      remove: (workerNodeKey: number) => boolean

                                                                                      Removes the worker node key from strategy internals.

                                                                                      +

                                                                                      Properties

                                                                                      choose: (workerNodeKeysSet?: ReadonlySet<number>) => number | undefined

                                                                                      Chooses a worker node in the pool and returns its key. +If no worker nodes are eligible, undefined is returned and the caller retries.

                                                                                      +

                                                                                      Type Declaration

                                                                                        • (workerNodeKeysSet?: ReadonlySet<number>): number | undefined
                                                                                        • Parameters

                                                                                          • OptionalworkerNodeKeysSet: ReadonlySet<number>

                                                                                            The worker node keys affinity set. If undefined, all workers are eligible.

                                                                                            +

                                                                                          Returns number | undefined

                                                                                          The worker node key or undefined.

                                                                                          +
                                                                                      name:
                                                                                          | "FAIR_SHARE"
                                                                                          | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                          | "LEAST_BUSY"
                                                                                          | "LEAST_ELU"
                                                                                          | "LEAST_USED"
                                                                                          | "ROUND_ROBIN"
                                                                                          | "WEIGHTED_ROUND_ROBIN"

                                                                                      The worker choice strategy name.

                                                                                      +
                                                                                      remove: (workerNodeKey: number) => boolean

                                                                                      Removes the worker node key from strategy internals.

                                                                                      Type Declaration

                                                                                        • (workerNodeKey: number): boolean
                                                                                        • Parameters

                                                                                          • workerNodeKey: number

                                                                                            The worker node key.

                                                                                          Returns boolean

                                                                                          true if the worker node key is removed, false otherwise.

                                                                                          -
                                                                                      reset: () => boolean

                                                                                      Resets strategy internals.

                                                                                      +
                                                                                      reset: () => boolean

                                                                                      Resets strategy internals.

                                                                                      Type Declaration

                                                                                        • (): boolean
                                                                                        • Returns boolean

                                                                                          true if the reset is successful, false otherwise.

                                                                                          -
                                                                                      retriesCount: number

                                                                                      The worker choice strategy execution retries count.

                                                                                      -
                                                                                      setOptions: (opts: WorkerChoiceStrategyOptions | undefined) => void

                                                                                      Sets the worker choice strategy options.

                                                                                      +
                                                                                      retriesCount: number

                                                                                      The worker choice strategy execution retries count.

                                                                                      +
                                                                                      setOptions: (opts: WorkerChoiceStrategyOptions | undefined) => void

                                                                                      Sets the worker choice strategy options.

                                                                                      Type Declaration

                                                                                      strategyPolicy: StrategyPolicy

                                                                                      Strategy policy.

                                                                                      -
                                                                                      taskStatisticsRequirements: TaskStatisticsRequirements

                                                                                      Tasks statistics requirements.

                                                                                      -
                                                                                      update: (workerNodeKey: number) => boolean

                                                                                      Updates the worker node key strategy internals. +

                                                                                      Returns void

                                                                                      strategyPolicy: StrategyPolicy

                                                                                      Strategy policy.

                                                                                      +
                                                                                      taskStatisticsRequirements: TaskStatisticsRequirements

                                                                                      Tasks statistics requirements.

                                                                                      +
                                                                                      update: (workerNodeKey: number) => boolean

                                                                                      Updates the worker node key strategy internals. This is called after a task has been executed on a worker node.

                                                                                      Type Declaration

                                                                                        • (workerNodeKey: number): boolean
                                                                                        • Parameters

                                                                                          • workerNodeKey: number

                                                                                          Returns boolean

                                                                                          true if the update is successful, false otherwise.

                                                                                          -
                                                                                      +
                                                                                      diff --git a/docs/interfaces/src.IWorkerNode.html b/docs/interfaces/src.IWorkerNode.html index 0622fe5c9..52c2e18ba 100644 --- a/docs/interfaces/src.IWorkerNode.html +++ b/docs/interfaces/src.IWorkerNode.html @@ -1,7 +1,7 @@ -IWorkerNode | poolifier - v5.1.7
                                                                                      poolifier - v5.1.7
                                                                                        Preparing search index...

                                                                                        Interface IWorkerNode<Worker, Data>Internal

                                                                                        Worker node interface.

                                                                                        +IWorkerNode | poolifier - v5.2.0
                                                                                        poolifier - v5.2.0
                                                                                          Preparing search index...

                                                                                          Interface IWorkerNode<Worker, Data>Internal

                                                                                          Worker node interface.

                                                                                          interface IWorkerNode<Worker extends IWorker, Data = unknown> {
                                                                                              clearTasksQueue: () => void;
                                                                                              deleteTask: (task: Task<Data>) => boolean;
                                                                                              deleteTaskFunctionWorkerUsage: (name: string) => boolean;
                                                                                              dequeueLastPrioritizedTask: () => Task<Data> | undefined;
                                                                                              dequeueTask: (bucket?: number) => Task<Data> | undefined;
                                                                                              enqueueTask: (task: Task<Data>) => number;
                                                                                              getTaskFunctionWorkerUsage: (name: string) => WorkerUsage | undefined;
                                                                                              info: WorkerInfo;
                                                                                              messageChannel?: MessageChannel;
                                                                                              registerOnceWorkerEventHandler: (
                                                                                                  event: string,
                                                                                                  handler: EventHandler<Worker>,
                                                                                              ) => void;
                                                                                              registerWorkerEventHandler: (
                                                                                                  event: string,
                                                                                                  handler: EventHandler<Worker>,
                                                                                              ) => void;
                                                                                              setTasksQueuePriority: (enablePriority: boolean) => void;
                                                                                              strategyData?: StrategyData;
                                                                                              tasksQueue: PriorityQueue<Task<Data>>;
                                                                                              tasksQueueBackPressureSize: number;
                                                                                              tasksQueueSize: () => number;
                                                                                              terminate: () => Promise<void>;
                                                                                              usage: WorkerUsage;
                                                                                              worker: Worker;
                                                                                              "[captureRejectionSymbol]"?<K>(
                                                                                                  error: Error,
                                                                                                  event: string | symbol,
                                                                                                  ...args: AnyRest,
                                                                                              ): void;
                                                                                              addListener<K>(
                                                                                                  eventName: string | symbol,
                                                                                                  listener: (...args: any[]) => void,
                                                                                              ): this;
                                                                                              emit<K>(eventName: string | symbol, ...args: AnyRest): boolean;
                                                                                              eventNames(): (string | symbol)[];
                                                                                              getMaxListeners(): number;
                                                                                              listenerCount<K>(eventName: string | symbol, listener?: Function): number;
                                                                                              listeners<K>(eventName: string | symbol): Function[];
                                                                                              off<K>(
                                                                                                  eventName: string | symbol,
                                                                                                  listener: (...args: any[]) => void,
                                                                                              ): this;
                                                                                              on<K>(eventName: string | symbol, listener: (...args: any[]) => void): this;
                                                                                              once<K>(
                                                                                                  eventName: string | symbol,
                                                                                                  listener: (...args: any[]) => void,
                                                                                              ): this;
                                                                                              prependListener<K>(
                                                                                                  eventName: string | symbol,
                                                                                                  listener: (...args: any[]) => void,
                                                                                              ): this;
                                                                                              prependOnceListener<K>(
                                                                                                  eventName: string | symbol,
                                                                                                  listener: (...args: any[]) => void,
                                                                                              ): this;
                                                                                              rawListeners<K>(eventName: string | symbol): Function[];
                                                                                              removeAllListeners(eventName?: string | symbol): this;
                                                                                              removeListener<K>(
                                                                                                  eventName: string | symbol,
                                                                                                  listener: (...args: any[]) => void,
                                                                                              ): this;
                                                                                              setMaxListeners(n: number): this;
                                                                                          }

                                                                                          Type Parameters

                                                                                          • Worker extends IWorker

                                                                                            Type of worker.

                                                                                          • Data = unknown

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

                                                                                            -

                                                                                          Hierarchy

                                                                                          • EventEmitter
                                                                                            • IWorkerNode
                                                                                          Index

                                                                                          Properties

                                                                                          Hierarchy

                                                                                          • EventEmitter
                                                                                            • IWorkerNode
                                                                                          Index

                                                                                          Properties

                                                                                          clearTasksQueue: () => void

                                                                                          Clears tasks queue.

                                                                                          -
                                                                                          deleteTask: (task: Task<Data>) => boolean

                                                                                          Deletes a task from the tasks queue.

                                                                                          +
                                                                                          deleteTask: (task: Task<Data>) => boolean

                                                                                          Deletes a task from the tasks queue.

                                                                                          Type Declaration

                                                                                            • (task: Task<Data>): boolean
                                                                                            • Parameters

                                                                                              Returns boolean

                                                                                              true if the task was deleted, false otherwise.

                                                                                              -
                                                                                          deleteTaskFunctionWorkerUsage: (name: string) => boolean

                                                                                          Deletes task function worker usage statistics.

                                                                                          +
                                                                                          deleteTaskFunctionWorkerUsage: (name: string) => boolean

                                                                                          Deletes task function worker usage statistics.

                                                                                          Type Declaration

                                                                                            • (name: string): boolean
                                                                                            • Parameters

                                                                                              • name: string

                                                                                                The task function name.

                                                                                              Returns boolean

                                                                                              true if the task function worker usage statistics were deleted, false otherwise.

                                                                                              -
                                                                                          dequeueLastPrioritizedTask: () => Task<Data> | undefined

                                                                                          Dequeue last prioritized task.

                                                                                          +
                                                                                          dequeueLastPrioritizedTask: () => Task<Data> | undefined

                                                                                          Dequeue last prioritized task.

                                                                                          Type Declaration

                                                                                          dequeueTask: (bucket?: number) => Task<Data> | undefined

                                                                                          Dequeue task.

                                                                                          +
                                                                                          dequeueTask: (bucket?: number) => Task<Data> | undefined

                                                                                          Dequeue task.

                                                                                          Type Declaration

                                                                                            • (bucket?: number): Task<Data> | undefined
                                                                                            • Parameters

                                                                                              • Optionalbucket: number

                                                                                                The prioritized bucket to dequeue from.

                                                                                              Returns Task<Data> | undefined

                                                                                              The dequeued task.

                                                                                          0
                                                                                           
                                                                                          -
                                                                                          enqueueTask: (task: Task<Data>) => number

                                                                                          Enqueue task.

                                                                                          +
                                                                                          enqueueTask: (task: Task<Data>) => number

                                                                                          Enqueue task.

                                                                                          Type Declaration

                                                                                            • (task: Task<Data>): number
                                                                                            • Parameters

                                                                                              Returns number

                                                                                              The tasks queue size.

                                                                                              -
                                                                                          getTaskFunctionWorkerUsage: (name: string) => WorkerUsage | undefined

                                                                                          Gets task function worker usage statistics.

                                                                                          +
                                                                                          getTaskFunctionWorkerUsage: (name: string) => WorkerUsage | undefined

                                                                                          Gets task function worker usage statistics.

                                                                                          Type Declaration

                                                                                            • (name: string): WorkerUsage | undefined
                                                                                            • Parameters

                                                                                              • name: string

                                                                                                The task function name.

                                                                                              Returns WorkerUsage | undefined

                                                                                              The task function worker usage statistics if the task function worker usage statistics are initialized, undefined otherwise.

                                                                                              -

                                                                                          Worker info.

                                                                                          -
                                                                                          messageChannel?: MessageChannel

                                                                                          Message channel (worker thread only).

                                                                                          -
                                                                                          registerOnceWorkerEventHandler: (
                                                                                              event: string,
                                                                                              handler: EventHandler<Worker>,
                                                                                          ) => void

                                                                                          Registers once a worker event handler.

                                                                                          +

                                                                                          Worker info.

                                                                                          +
                                                                                          messageChannel?: MessageChannel

                                                                                          Message channel (worker thread only).

                                                                                          +
                                                                                          registerOnceWorkerEventHandler: (
                                                                                              event: string,
                                                                                              handler: EventHandler<Worker>,
                                                                                          ) => void

                                                                                          Registers once a worker event handler.

                                                                                          Type Declaration

                                                                                          registerWorkerEventHandler: (
                                                                                              event: string,
                                                                                              handler: EventHandler<Worker>,
                                                                                          ) => void

                                                                                          Registers a worker event handler.

                                                                                          +

                                                                                          Returns void

                                                                                          registerWorkerEventHandler: (
                                                                                              event: string,
                                                                                              handler: EventHandler<Worker>,
                                                                                          ) => void

                                                                                          Registers a worker event handler.

                                                                                          Type Declaration

                                                                                          setTasksQueuePriority: (enablePriority: boolean) => void

                                                                                          Sets tasks queue priority.

                                                                                          +

                                                                                          Returns void

                                                                                          setTasksQueuePriority: (enablePriority: boolean) => void

                                                                                          Sets tasks queue priority.

                                                                                          Type Declaration

                                                                                            • (enablePriority: boolean): void
                                                                                            • Parameters

                                                                                              • enablePriority: boolean

                                                                                                Whether to enable tasks queue priority.

                                                                                                -

                                                                                              Returns void

                                                                                          strategyData?: StrategyData

                                                                                          Worker choice strategy data. +

                                                                                          Returns void

                                                                                          strategyData?: StrategyData

                                                                                          Worker choice strategy data. This is used to store data that are specific to the worker choice strategy.

                                                                                          -
                                                                                          tasksQueue: PriorityQueue<Task<Data>>

                                                                                          Tasks queue.

                                                                                          -
                                                                                          tasksQueueBackPressureSize: number

                                                                                          Tasks queue back pressure size. +

                                                                                          tasksQueue: PriorityQueue<Task<Data>>

                                                                                          Tasks queue.

                                                                                          +
                                                                                          tasksQueueBackPressureSize: number

                                                                                          Tasks queue back pressure size. This is the number of tasks that can be enqueued before the worker node has back pressure.

                                                                                          -
                                                                                          tasksQueueSize: () => number

                                                                                          Tasks queue size.

                                                                                          +
                                                                                          tasksQueueSize: () => number

                                                                                          Tasks queue size.

                                                                                          Type Declaration

                                                                                            • (): number
                                                                                            • Returns number

                                                                                              The tasks queue size.

                                                                                              -
                                                                                          terminate: () => Promise<void>

                                                                                          Terminates the worker node.

                                                                                          -

                                                                                          Worker usage statistics.

                                                                                          -
                                                                                          worker: Worker

                                                                                          Worker.

                                                                                          -

                                                                                          Methods

                                                                                          • Type Parameters

                                                                                            • K

                                                                                            Parameters

                                                                                            • error: Error
                                                                                            • event: string | symbol
                                                                                            • ...args: AnyRest

                                                                                            Returns void

                                                                                          • Alias for emitter.on(eventName, listener).

                                                                                            +
                                                                                          terminate: () => Promise<void>

                                                                                          Terminates the worker node.

                                                                                          +

                                                                                          Worker usage statistics.

                                                                                          +
                                                                                          worker: Worker

                                                                                          Worker.

                                                                                          +

                                                                                          Methods

                                                                                          • Type Parameters

                                                                                            • K

                                                                                            Parameters

                                                                                            • error: Error
                                                                                            • event: string | symbol
                                                                                            • ...args: AnyRest

                                                                                            Returns void

                                                                                          • Alias for emitter.on(eventName, listener).

                                                                                            Type Parameters

                                                                                            • K

                                                                                            Parameters

                                                                                            • eventName: string | symbol
                                                                                            • listener: (...args: any[]) => void

                                                                                            Returns this

                                                                                            v0.1.26

                                                                                            -
                                                                                          • Synchronously calls each of the listeners registered for the event named eventName, in the order they were registered, passing the supplied arguments +

                                                                                          • Synchronously calls each of the listeners registered for the event named eventName, in the order they were registered, passing the supplied arguments to each.

                                                                                            Returns true if the event had listeners, false otherwise.

                                                                                            import { EventEmitter } from 'node:events';
                                                                                            const myEmitter = new EventEmitter();

                                                                                            // First listener
                                                                                            myEmitter.on('event', function firstListener() {
                                                                                            console.log('Helloooo! first listener');
                                                                                            });
                                                                                            // Second listener
                                                                                            myEmitter.on('event', function secondListener(arg1, arg2) {
                                                                                            console.log(`event with parameters ${arg1}, ${arg2} in second listener`);
                                                                                            });
                                                                                            // Third listener
                                                                                            myEmitter.on('event', function thirdListener(...args) {
                                                                                            const parameters = args.join(', ');
                                                                                            console.log(`event with parameters ${parameters} in third listener`);
                                                                                            });

                                                                                            console.log(myEmitter.listeners('event'));

                                                                                            myEmitter.emit('event', 1, 2, 3, 4, 5);

                                                                                            // Prints:
                                                                                            // [
                                                                                            // [Function: firstListener],
                                                                                            // [Function: secondListener],
                                                                                            // [Function: thirdListener]
                                                                                            // ]
                                                                                            // Helloooo! first listener
                                                                                            // event with parameters 1, 2 in second listener
                                                                                            // event with parameters 1, 2, 3, 4, 5 in third listener

                                                                                            Type Parameters

                                                                                            • K

                                                                                            Parameters

                                                                                            • eventName: string | symbol
                                                                                            • ...args: AnyRest

                                                                                            Returns boolean

                                                                                            v0.1.26

                                                                                            -
                                                                                          • Returns an array listing the events for which the emitter has registered +

                                                                                          • Returns an array listing the events for which the emitter has registered listeners. The values in the array are strings or Symbols.

                                                                                            import { EventEmitter } from 'node:events';

                                                                                            const myEE = new EventEmitter();
                                                                                            myEE.on('foo', () => {});
                                                                                            myEE.on('bar', () => {});

                                                                                            const sym = Symbol('symbol');
                                                                                            myEE.on(sym, () => {});

                                                                                            console.log(myEE.eventNames());
                                                                                            // Prints: [ 'foo', 'bar', Symbol(symbol) ]

                                                                                            Returns (string | symbol)[]

                                                                                            v6.0.0

                                                                                            -
                                                                                          • Returns the current max listener value for the EventEmitter which is either +

                                                                                          • Returns the current max listener value for the EventEmitter which is either set by emitter.setMaxListeners(n) or defaults to EventEmitter.defaultMaxListeners.

                                                                                            Returns number

                                                                                            v1.0.0

                                                                                            -
                                                                                          • Returns the number of listeners listening for the event named eventName. +

                                                                                          • Returns the number of listeners listening for the event named eventName. If listener is provided, it will return how many times the listener is found in the list of the listeners of the event.

                                                                                            Type Parameters

                                                                                            • K

                                                                                            Parameters

                                                                                            • eventName: string | symbol

                                                                                              The name of the event being listened for

                                                                                            • Optionallistener: Function

                                                                                              The event handler function

                                                                                            Returns number

                                                                                            v3.2.0

                                                                                            -
                                                                                          • Returns a copy of the array of listeners for the event named eventName.

                                                                                            +
                                                                                          • Returns a copy of the array of listeners for the event named eventName.

                                                                                            server.on('connection', (stream) => {
                                                                                            console.log('someone connected!');
                                                                                            });
                                                                                            console.log(util.inspect(server.listeners('connection')));
                                                                                            // Prints: [ [Function] ]

                                                                                            Type Parameters

                                                                                            • K

                                                                                            Parameters

                                                                                            • eventName: string | symbol

                                                                                            Returns Function[]

                                                                                            v0.1.26

                                                                                            -
                                                                                          • Alias for emitter.removeListener().

                                                                                            +
                                                                                          • Alias for emitter.removeListener().

                                                                                            Type Parameters

                                                                                            • K

                                                                                            Parameters

                                                                                            • eventName: string | symbol
                                                                                            • listener: (...args: any[]) => void

                                                                                            Returns this

                                                                                            v10.0.0

                                                                                            -
                                                                                          • Adds the listener function to the end of the listeners array for the event +

                                                                                          • Adds the listener function to the end of the listeners array for the event named eventName. No checks are made to see if the listener has already been added. Multiple calls passing the same combination of eventName and listener will result in the listener being added, and called, multiple times.

                                                                                            @@ -124,7 +124,7 @@ event listener to the beginning of the listeners array.

                                                                                            Type Parameters

                                                                                            • K

                                                                                            Parameters

                                                                                            • eventName: string | symbol

                                                                                              The name of the event.

                                                                                            • listener: (...args: any[]) => void

                                                                                              The callback function

                                                                                            Returns this

                                                                                            v0.1.101

                                                                                            -
                                                                                          • Adds a one-time listener function for the event named eventName. The +

                                                                                          • Adds a one-time listener function for the event named eventName. The next time eventName is triggered, this listener is removed and then invoked.

                                                                                            server.once('connection', (stream) => {
                                                                                            console.log('Ah, we have our first user!');
                                                                                            });
                                                                                            @@ -138,7 +138,7 @@ event listener to the beginning of the listeners array.

                                                                                            Type Parameters

                                                                                            • K

                                                                                            Parameters

                                                                                            • eventName: string | symbol

                                                                                              The name of the event.

                                                                                            • listener: (...args: any[]) => void

                                                                                              The callback function

                                                                                            Returns this

                                                                                            v0.3.0

                                                                                            -
                                                                                          • Adds the listener function to the beginning of the listeners array for the +

                                                                                          • Adds the listener function to the beginning of the listeners array for the event named eventName. No checks are made to see if the listener has already been added. Multiple calls passing the same combination of eventName and listener will result in the listener being added, and called, multiple times.

                                                                                            @@ -149,7 +149,7 @@ and listener will result in the listener being added,

                                                                                            Type Parameters

                                                                                            • K

                                                                                            Parameters

                                                                                            • eventName: string | symbol

                                                                                              The name of the event.

                                                                                            • listener: (...args: any[]) => void

                                                                                              The callback function

                                                                                            Returns this

                                                                                            v6.0.0

                                                                                            -
                                                                                          • Adds a one-timelistener function for the event named eventName to the beginning of the listeners array. The next time eventName is triggered, this +

                                                                                          • Adds a one-timelistener function for the event named eventName to the beginning of the listeners array. The next time eventName is triggered, this listener is removed, and then invoked.

                                                                                            server.prependOnceListener('connection', (stream) => {
                                                                                            console.log('Ah, we have our first user!');
                                                                                            });
                                                                                            @@ -158,19 +158,19 @@ listener is removed, and then invoked.

                                                                                            Type Parameters

                                                                                            • K

                                                                                            Parameters

                                                                                            • eventName: string | symbol

                                                                                              The name of the event.

                                                                                            • listener: (...args: any[]) => void

                                                                                              The callback function

                                                                                            Returns this

                                                                                            v6.0.0

                                                                                            -
                                                                                          • Returns a copy of the array of listeners for the event named eventName, +

                                                                                          • Returns a copy of the array of listeners for the event named eventName, including any wrappers (such as those created by .once()).

                                                                                            import { EventEmitter } from 'node:events';
                                                                                            const emitter = new EventEmitter();
                                                                                            emitter.once('log', () => console.log('log once'));

                                                                                            // Returns a new Array with a function `onceWrapper` which has a property
                                                                                            // `listener` which contains the original listener bound above
                                                                                            const listeners = emitter.rawListeners('log');
                                                                                            const logFnWrapper = listeners[0];

                                                                                            // Logs "log once" to the console and does not unbind the `once` event
                                                                                            logFnWrapper.listener();

                                                                                            // Logs "log once" to the console and removes the listener
                                                                                            logFnWrapper();

                                                                                            emitter.on('log', () => console.log('log persistently'));
                                                                                            // Will return a new Array with a single function bound by `.on()` above
                                                                                            const newListeners = emitter.rawListeners('log');

                                                                                            // Logs "log persistently" twice
                                                                                            newListeners[0]();
                                                                                            emitter.emit('log');

                                                                                            Type Parameters

                                                                                            • K

                                                                                            Parameters

                                                                                            • eventName: string | symbol

                                                                                            Returns Function[]

                                                                                            v9.4.0

                                                                                            -
                                                                                          • Removes all listeners, or those of the specified eventName.

                                                                                            +
                                                                                          • Removes all listeners, or those of the specified eventName.

                                                                                            It is bad practice to remove listeners added elsewhere in the code, particularly when the EventEmitter instance was created by some other component or module (e.g. sockets or file streams).

                                                                                            Returns a reference to the EventEmitter, so that calls can be chained.

                                                                                            Parameters

                                                                                            • OptionaleventName: string | symbol

                                                                                            Returns this

                                                                                            v0.1.26

                                                                                            -
                                                                                          • Removes the specified listener from the listener array for the event named eventName.

                                                                                            +
                                                                                          • Removes the specified listener from the listener array for the event named eventName.

                                                                                            const callback = (stream) => {
                                                                                            console.log('someone connected!');
                                                                                            };
                                                                                            server.on('connection', callback);
                                                                                            // ...
                                                                                            server.removeListener('connection', callback);
                                                                                            @@ -197,10 +197,10 @@ recently added instance. In the example the once('ping') listener i

                                                                                            Returns a reference to the EventEmitter, so that calls can be chained.

                                                                                            Type Parameters

                                                                                            • K

                                                                                            Parameters

                                                                                            • eventName: string | symbol
                                                                                            • listener: (...args: any[]) => void

                                                                                            Returns this

                                                                                            v0.1.26

                                                                                            -
                                                                                          • By default EventEmitters will print a warning if more than 10 listeners are +

                                                                                          • By default EventEmitters will print a warning if more than 10 listeners are added for a particular event. This is a useful default that helps finding memory leaks. The emitter.setMaxListeners() method allows the limit to be modified for this specific EventEmitter instance. The value can be set to Infinity (or 0) to indicate an unlimited number of listeners.

                                                                                            Returns a reference to the EventEmitter, so that calls can be chained.

                                                                                            Parameters

                                                                                            • n: number

                                                                                            Returns this

                                                                                            v0.3.5

                                                                                            -
                                                                                          +
                                                                                          diff --git a/docs/interfaces/src.MeasurementOptions.html b/docs/interfaces/src.MeasurementOptions.html index 965319ab5..322f0e6ef 100644 --- a/docs/interfaces/src.MeasurementOptions.html +++ b/docs/interfaces/src.MeasurementOptions.html @@ -1,4 +1,4 @@ -MeasurementOptions | poolifier - v5.1.7
                                                                                          poolifier - v5.1.7
                                                                                            Preparing search index...

                                                                                            Interface MeasurementOptions

                                                                                            Measurement options.

                                                                                            -
                                                                                            interface MeasurementOptions {
                                                                                                median: boolean;
                                                                                            }
                                                                                            Index

                                                                                            Properties

                                                                                            median +MeasurementOptions | poolifier - v5.2.0
                                                                                            poolifier - v5.2.0
                                                                                              Preparing search index...

                                                                                              Interface MeasurementOptions

                                                                                              Measurement options.

                                                                                              +
                                                                                              interface MeasurementOptions {
                                                                                                  median: boolean;
                                                                                              }
                                                                                              Index

                                                                                              Properties

                                                                                              Properties

                                                                                              median: boolean

                                                                                              Set measurement median.

                                                                                              -
                                                                                              +
                                                                                              diff --git a/docs/interfaces/src.MeasurementStatistics.html b/docs/interfaces/src.MeasurementStatistics.html index b6004b543..6831d5cf9 100644 --- a/docs/interfaces/src.MeasurementStatistics.html +++ b/docs/interfaces/src.MeasurementStatistics.html @@ -1,14 +1,14 @@ -MeasurementStatistics | poolifier - v5.1.7
                                                                                              poolifier - v5.1.7
                                                                                                Preparing search index...

                                                                                                Interface MeasurementStatisticsInternal

                                                                                                Measurement statistics.

                                                                                                -
                                                                                                interface MeasurementStatistics {
                                                                                                    aggregate?: number;
                                                                                                    average?: number;
                                                                                                    history: CircularBuffer;
                                                                                                    maximum?: number;
                                                                                                    median?: number;
                                                                                                    minimum?: number;
                                                                                                }
                                                                                                Index

                                                                                                Properties

                                                                                                aggregate? +MeasurementStatistics | poolifier - v5.2.0
                                                                                                poolifier - v5.2.0
                                                                                                  Preparing search index...

                                                                                                  Interface MeasurementStatisticsInternal

                                                                                                  Measurement statistics.

                                                                                                  +
                                                                                                  interface MeasurementStatistics {
                                                                                                      aggregate?: number;
                                                                                                      average?: number;
                                                                                                      history: CircularBuffer;
                                                                                                      maximum?: number;
                                                                                                      median?: number;
                                                                                                      minimum?: number;
                                                                                                  }
                                                                                                  Index

                                                                                                  Properties

                                                                                                  aggregate?: number

                                                                                                  Measurement aggregate.

                                                                                                  -
                                                                                                  average?: number

                                                                                                  Measurement average.

                                                                                                  -

                                                                                                  Measurement history.

                                                                                                  -
                                                                                                  maximum?: number

                                                                                                  Measurement maximum.

                                                                                                  -
                                                                                                  median?: number

                                                                                                  Measurement median.

                                                                                                  -
                                                                                                  minimum?: number

                                                                                                  Measurement minimum.

                                                                                                  -
                                                                                                  +
                                                                                                  average?: number

                                                                                                  Measurement average.

                                                                                                  +

                                                                                                  Measurement history.

                                                                                                  +
                                                                                                  maximum?: number

                                                                                                  Measurement maximum.

                                                                                                  +
                                                                                                  median?: number

                                                                                                  Measurement median.

                                                                                                  +
                                                                                                  minimum?: number

                                                                                                  Measurement minimum.

                                                                                                  +
                                                                                                  diff --git a/docs/interfaces/src.MeasurementStatisticsRequirements.html b/docs/interfaces/src.MeasurementStatisticsRequirements.html index b1b1bbe22..7e8310df0 100644 --- a/docs/interfaces/src.MeasurementStatisticsRequirements.html +++ b/docs/interfaces/src.MeasurementStatisticsRequirements.html @@ -1,8 +1,8 @@ -MeasurementStatisticsRequirements | poolifier - v5.1.7
                                                                                                  poolifier - v5.1.7
                                                                                                    Preparing search index...

                                                                                                    Interface MeasurementStatisticsRequirementsInternal

                                                                                                    Measurement statistics requirements.

                                                                                                    -
                                                                                                    interface MeasurementStatisticsRequirements {
                                                                                                        aggregate: boolean;
                                                                                                        average: boolean;
                                                                                                        median: boolean;
                                                                                                    }
                                                                                                    Index

                                                                                                    Properties

                                                                                                    aggregate +MeasurementStatisticsRequirements | poolifier - v5.2.0
                                                                                                    poolifier - v5.2.0
                                                                                                      Preparing search index...

                                                                                                      Interface MeasurementStatisticsRequirementsInternal

                                                                                                      Measurement statistics requirements.

                                                                                                      +
                                                                                                      interface MeasurementStatisticsRequirements {
                                                                                                          aggregate: boolean;
                                                                                                          average: boolean;
                                                                                                          median: boolean;
                                                                                                      }
                                                                                                      Index

                                                                                                      Properties

                                                                                                      aggregate: boolean

                                                                                                      Requires measurement aggregate.

                                                                                                      -
                                                                                                      average: boolean

                                                                                                      Requires measurement average.

                                                                                                      -
                                                                                                      median: boolean

                                                                                                      Requires measurement median.

                                                                                                      -
                                                                                                      +
                                                                                                      average: boolean

                                                                                                      Requires measurement average.

                                                                                                      +
                                                                                                      median: boolean

                                                                                                      Requires measurement median.

                                                                                                      +
                                                                                                      diff --git a/docs/interfaces/src.MessageValue.html b/docs/interfaces/src.MessageValue.html index e3b30f3f0..af91bab45 100644 --- a/docs/interfaces/src.MessageValue.html +++ b/docs/interfaces/src.MessageValue.html @@ -1,7 +1,7 @@ -MessageValue | poolifier - v5.1.7
                                                                                                      poolifier - v5.1.7
                                                                                                        Preparing search index...

                                                                                                        Interface MessageValue<Data, ErrorData>Internal

                                                                                                        Message object that is passed between main worker and worker.

                                                                                                        +MessageValue | poolifier - v5.2.0
                                                                                                        poolifier - v5.2.0
                                                                                                          Preparing search index...

                                                                                                          Interface MessageValue<Data, ErrorData>Internal

                                                                                                          Message object that is passed between main worker and worker.

                                                                                                          interface MessageValue<Data = unknown, ErrorData = unknown> {
                                                                                                              abortable?: boolean;
                                                                                                              checkActive?: boolean;
                                                                                                              data?: Data;
                                                                                                              kill?: true | "success" | "HARD" | "SOFT" | "failure";
                                                                                                              name?: string;
                                                                                                              port?: MessagePort;
                                                                                                              priority?: number;
                                                                                                              ready?: boolean;
                                                                                                              statistics?: WorkerStatistics;
                                                                                                              strategy?:
                                                                                                                  | "FAIR_SHARE"
                                                                                                                  | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                  | "LEAST_BUSY"
                                                                                                                  | "LEAST_ELU"
                                                                                                                  | "LEAST_USED"
                                                                                                                  | "ROUND_ROBIN"
                                                                                                                  | "WEIGHTED_ROUND_ROBIN";
                                                                                                              taskFunction?: string;
                                                                                                              taskFunctionOperation?: "add"
                                                                                                              | "default"
                                                                                                              | "remove";
                                                                                                              taskFunctionOperationStatus?: boolean;
                                                                                                              taskFunctionProperties?: TaskFunctionProperties;
                                                                                                              taskFunctionsProperties?: TaskFunctionProperties[];
                                                                                                              taskId?: `${string}-${string}-${string}-${string}-${string}`;
                                                                                                              taskOperation?: "abort";
                                                                                                              taskPerformance?: TaskPerformance;
                                                                                                              timestamp?: number;
                                                                                                              transferList?: readonly Transferable[];
                                                                                                              workerError?: WorkerError<ErrorData>;
                                                                                                              workerId?: number;
                                                                                                          }

                                                                                                          Type Parameters

                                                                                                          • Data = unknown

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

                                                                                                          • ErrorData = unknown

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

                                                                                                            -

                                                                                                          Hierarchy (View Summary)

                                                                                                          Index

                                                                                                          Properties

                                                                                                          Hierarchy (View Summary)

                                                                                                          Index

                                                                                                          Properties

                                                                                                          Properties

                                                                                                          abortable?: boolean

                                                                                                          Whether the task is abortable or not.

                                                                                                          -
                                                                                                          checkActive?: boolean

                                                                                                          Whether the worker starts or stops its activity check.

                                                                                                          -
                                                                                                          data?: Data

                                                                                                          Task input data that will be passed to the worker.

                                                                                                          -
                                                                                                          kill?: true | "success" | "HARD" | "SOFT" | "failure"

                                                                                                          Kill code.

                                                                                                          -
                                                                                                          name?: string

                                                                                                          Task name.

                                                                                                          -
                                                                                                          port?: MessagePort

                                                                                                          Message port.

                                                                                                          -
                                                                                                          priority?: number

                                                                                                          Task priority. Lower values have higher priority.

                                                                                                          +
                                                                                                          checkActive?: boolean

                                                                                                          Whether the worker starts or stops its activity check.

                                                                                                          +
                                                                                                          data?: Data

                                                                                                          Task input data that will be passed to the worker.

                                                                                                          +
                                                                                                          kill?: true | "success" | "HARD" | "SOFT" | "failure"

                                                                                                          Kill code.

                                                                                                          +
                                                                                                          name?: string

                                                                                                          Task name.

                                                                                                          +
                                                                                                          port?: MessagePort

                                                                                                          Message port.

                                                                                                          +
                                                                                                          priority?: number

                                                                                                          Task priority. Lower values have higher priority.

                                                                                                          0
                                                                                                           
                                                                                                          -
                                                                                                          ready?: boolean

                                                                                                          Whether the worker is ready or not.

                                                                                                          -
                                                                                                          statistics?: WorkerStatistics

                                                                                                          Whether the worker computes the given statistics or not.

                                                                                                          -
                                                                                                          strategy?:
                                                                                                              | "FAIR_SHARE"
                                                                                                              | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                              | "LEAST_BUSY"
                                                                                                              | "LEAST_ELU"
                                                                                                              | "LEAST_USED"
                                                                                                              | "ROUND_ROBIN"
                                                                                                              | "WEIGHTED_ROUND_ROBIN"

                                                                                                          Task worker choice strategy.

                                                                                                          -
                                                                                                          taskFunction?: string

                                                                                                          Task function serialized to string.

                                                                                                          -
                                                                                                          taskFunctionOperation?: "add" | "default" | "remove"

                                                                                                          Task function operation:

                                                                                                          +
                                                                                                          ready?: boolean

                                                                                                          Whether the worker is ready or not.

                                                                                                          +
                                                                                                          statistics?: WorkerStatistics

                                                                                                          Whether the worker computes the given statistics or not.

                                                                                                          +
                                                                                                          strategy?:
                                                                                                              | "FAIR_SHARE"
                                                                                                              | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                              | "LEAST_BUSY"
                                                                                                              | "LEAST_ELU"
                                                                                                              | "LEAST_USED"
                                                                                                              | "ROUND_ROBIN"
                                                                                                              | "WEIGHTED_ROUND_ROBIN"

                                                                                                          Task worker choice strategy.

                                                                                                          +
                                                                                                          taskFunction?: string

                                                                                                          Task function serialized to string.

                                                                                                          +
                                                                                                          taskFunctionOperation?: "add" | "default" | "remove"

                                                                                                          Task function operation:

                                                                                                          • 'add' - Add a task function.
                                                                                                          • 'remove' - Remove a task function.
                                                                                                          • 'default' - Set a task function as default.
                                                                                                          -
                                                                                                          taskFunctionOperationStatus?: boolean

                                                                                                          Whether the task function operation is successful or not.

                                                                                                          -
                                                                                                          taskFunctionProperties?: TaskFunctionProperties

                                                                                                          Task function properties.

                                                                                                          -
                                                                                                          taskFunctionsProperties?: TaskFunctionProperties[]

                                                                                                          Task functions properties.

                                                                                                          -
                                                                                                          taskId?: `${string}-${string}-${string}-${string}-${string}`

                                                                                                          Task UUID.

                                                                                                          -
                                                                                                          taskOperation?: "abort"

                                                                                                          Task operation:

                                                                                                          +
                                                                                                          taskFunctionOperationStatus?: boolean

                                                                                                          Whether the task function operation is successful or not.

                                                                                                          +
                                                                                                          taskFunctionProperties?: TaskFunctionProperties

                                                                                                          Task function properties.

                                                                                                          +
                                                                                                          taskFunctionsProperties?: TaskFunctionProperties[]

                                                                                                          Task functions properties.

                                                                                                          +
                                                                                                          taskId?: `${string}-${string}-${string}-${string}-${string}`

                                                                                                          Task UUID.

                                                                                                          +
                                                                                                          taskOperation?: "abort"

                                                                                                          Task operation:

                                                                                                          • 'abort' - Abort a task.
                                                                                                          -
                                                                                                          taskPerformance?: TaskPerformance

                                                                                                          Task performance.

                                                                                                          -
                                                                                                          timestamp?: number

                                                                                                          Timestamp.

                                                                                                          -
                                                                                                          transferList?: readonly Transferable[]

                                                                                                          Array of transferable objects.

                                                                                                          -
                                                                                                          workerError?: WorkerError<ErrorData>

                                                                                                          Worker error.

                                                                                                          -
                                                                                                          workerId?: number

                                                                                                          Worker id.

                                                                                                          -
                                                                                                          +
                                                                                                          taskPerformance?: TaskPerformance

                                                                                                          Task performance.

                                                                                                          +
                                                                                                          timestamp?: number

                                                                                                          Timestamp.

                                                                                                          +
                                                                                                          transferList?: readonly Transferable[]

                                                                                                          Array of transferable objects.

                                                                                                          +
                                                                                                          workerError?: WorkerError<ErrorData>

                                                                                                          Worker error.

                                                                                                          +
                                                                                                          workerId?: number

                                                                                                          Worker id.

                                                                                                          +
                                                                                                          diff --git a/docs/interfaces/src.PoolInfo.html b/docs/interfaces/src.PoolInfo.html index 018e524cc..305d1b573 100644 --- a/docs/interfaces/src.PoolInfo.html +++ b/docs/interfaces/src.PoolInfo.html @@ -1,5 +1,5 @@ -PoolInfo | poolifier - v5.1.7
                                                                                                          poolifier - v5.1.7
                                                                                                            Preparing search index...

                                                                                                            Interface PoolInfo

                                                                                                            Pool information.

                                                                                                            -
                                                                                                            interface PoolInfo {
                                                                                                                backPressure?: boolean;
                                                                                                                backPressureWorkerNodes?: number;
                                                                                                                busyWorkerNodes: number;
                                                                                                                defaultStrategy:
                                                                                                                    | "FAIR_SHARE"
                                                                                                                    | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                    | "LEAST_BUSY"
                                                                                                                    | "LEAST_ELU"
                                                                                                                    | "LEAST_USED"
                                                                                                                    | "ROUND_ROBIN"
                                                                                                                    | "WEIGHTED_ROUND_ROBIN";
                                                                                                                dynamicWorkerNodes?: number;
                                                                                                                elu?: {
                                                                                                                    active: {
                                                                                                                        average?: number;
                                                                                                                        maximum: number;
                                                                                                                        median?: number;
                                                                                                                        minimum: number;
                                                                                                                    };
                                                                                                                    idle: {
                                                                                                                        average?: number;
                                                                                                                        maximum: number;
                                                                                                                        median?: number;
                                                                                                                        minimum: number;
                                                                                                                    };
                                                                                                                    utilization: { average?: number; median?: number };
                                                                                                                };
                                                                                                                executedTasks: number;
                                                                                                                executingTasks: number;
                                                                                                                failedTasks: number;
                                                                                                                idleWorkerNodes: number;
                                                                                                                maxQueuedTasks?: number;
                                                                                                                maxSize: number;
                                                                                                                minSize: number;
                                                                                                                queuedTasks?: number;
                                                                                                                ready: boolean;
                                                                                                                runTime?: {
                                                                                                                    average?: number;
                                                                                                                    maximum: number;
                                                                                                                    median?: number;
                                                                                                                    minimum: number;
                                                                                                                };
                                                                                                                started: boolean;
                                                                                                                stealingWorkerNodes?: number;
                                                                                                                stolenTasks?: number;
                                                                                                                strategyRetries: number;
                                                                                                                type: "fixed"
                                                                                                                | "dynamic";
                                                                                                                utilization?: number;
                                                                                                                version: string;
                                                                                                                waitTime?: {
                                                                                                                    average?: number;
                                                                                                                    maximum: number;
                                                                                                                    median?: number;
                                                                                                                    minimum: number;
                                                                                                                };
                                                                                                                worker: "cluster"
                                                                                                                | "thread";
                                                                                                                workerNodes: number;
                                                                                                            }
                                                                                                            Index

                                                                                                            Properties

                                                                                                            backPressure? +PoolInfo | poolifier - v5.2.0
                                                                                                            poolifier - v5.2.0
                                                                                                              Preparing search index...

                                                                                                              Interface PoolInfo

                                                                                                              Pool information.

                                                                                                              +
                                                                                                              interface PoolInfo {
                                                                                                                  backPressure?: boolean;
                                                                                                                  backPressureWorkerNodes?: number;
                                                                                                                  busyWorkerNodes: number;
                                                                                                                  defaultStrategy:
                                                                                                                      | "FAIR_SHARE"
                                                                                                                      | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                      | "LEAST_BUSY"
                                                                                                                      | "LEAST_ELU"
                                                                                                                      | "LEAST_USED"
                                                                                                                      | "ROUND_ROBIN"
                                                                                                                      | "WEIGHTED_ROUND_ROBIN";
                                                                                                                  dynamicWorkerNodes?: number;
                                                                                                                  elu?: {
                                                                                                                      active: {
                                                                                                                          average?: number;
                                                                                                                          maximum: number;
                                                                                                                          median?: number;
                                                                                                                          minimum: number;
                                                                                                                      };
                                                                                                                      idle: {
                                                                                                                          average?: number;
                                                                                                                          maximum: number;
                                                                                                                          median?: number;
                                                                                                                          minimum: number;
                                                                                                                      };
                                                                                                                      utilization: { average?: number; median?: number };
                                                                                                                  };
                                                                                                                  executedTasks: number;
                                                                                                                  executingTasks: number;
                                                                                                                  failedTasks: number;
                                                                                                                  idleWorkerNodes: number;
                                                                                                                  maxQueuedTasks?: number;
                                                                                                                  maxSize: number;
                                                                                                                  minSize: number;
                                                                                                                  queuedTasks?: number;
                                                                                                                  ready: boolean;
                                                                                                                  runTime?: {
                                                                                                                      average?: number;
                                                                                                                      maximum: number;
                                                                                                                      median?: number;
                                                                                                                      minimum: number;
                                                                                                                  };
                                                                                                                  started: boolean;
                                                                                                                  stealingWorkerNodes?: number;
                                                                                                                  stolenTasks?: number;
                                                                                                                  strategyRetries: number;
                                                                                                                  type: "fixed"
                                                                                                                  | "dynamic";
                                                                                                                  utilization?: number;
                                                                                                                  version: string;
                                                                                                                  waitTime?: {
                                                                                                                      average?: number;
                                                                                                                      maximum: number;
                                                                                                                      median?: number;
                                                                                                                      minimum: number;
                                                                                                                  };
                                                                                                                  worker: "cluster"
                                                                                                                  | "thread";
                                                                                                                  workerNodes: number;
                                                                                                              }
                                                                                                              Index

                                                                                                              Properties

                                                                                                              backPressure?: boolean
                                                                                                              backPressureWorkerNodes?: number

                                                                                                              Pool tasks back pressure worker nodes.

                                                                                                              -
                                                                                                              busyWorkerNodes: number

                                                                                                              Pool busy worker nodes.

                                                                                                              -
                                                                                                              defaultStrategy:
                                                                                                                  | "FAIR_SHARE"
                                                                                                                  | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                  | "LEAST_BUSY"
                                                                                                                  | "LEAST_ELU"
                                                                                                                  | "LEAST_USED"
                                                                                                                  | "ROUND_ROBIN"
                                                                                                                  | "WEIGHTED_ROUND_ROBIN"
                                                                                                              dynamicWorkerNodes?: number

                                                                                                              Pool dynamic worker nodes.

                                                                                                              -
                                                                                                              elu?: {
                                                                                                                  active: {
                                                                                                                      average?: number;
                                                                                                                      maximum: number;
                                                                                                                      median?: number;
                                                                                                                      minimum: number;
                                                                                                                  };
                                                                                                                  idle: {
                                                                                                                      average?: number;
                                                                                                                      maximum: number;
                                                                                                                      median?: number;
                                                                                                                      minimum: number;
                                                                                                                  };
                                                                                                                  utilization: { average?: number; median?: number };
                                                                                                              }
                                                                                                              executedTasks: number
                                                                                                              executingTasks: number
                                                                                                              failedTasks: number
                                                                                                              idleWorkerNodes: number

                                                                                                              Pool idle worker nodes.

                                                                                                              -
                                                                                                              maxQueuedTasks?: number
                                                                                                              maxSize: number
                                                                                                              minSize: number
                                                                                                              queuedTasks?: number
                                                                                                              ready: boolean
                                                                                                              runTime?: {
                                                                                                                  average?: number;
                                                                                                                  maximum: number;
                                                                                                                  median?: number;
                                                                                                                  minimum: number;
                                                                                                              }
                                                                                                              started: boolean
                                                                                                              stealingWorkerNodes?: number

                                                                                                              Pool tasks stealing worker nodes.

                                                                                                              -
                                                                                                              stolenTasks?: number
                                                                                                              strategyRetries: number
                                                                                                              type: "fixed" | "dynamic"
                                                                                                              utilization?: number

                                                                                                              Pool utilization.

                                                                                                              -
                                                                                                              version: string
                                                                                                              waitTime?: {
                                                                                                                  average?: number;
                                                                                                                  maximum: number;
                                                                                                                  median?: number;
                                                                                                                  minimum: number;
                                                                                                              }
                                                                                                              worker: "cluster" | "thread"
                                                                                                              workerNodes: number

                                                                                                              Pool total worker nodes.

                                                                                                              -
                                                                                                              +

                                                                                                              Properties

                                                                                                              backPressure?: boolean
                                                                                                              backPressureWorkerNodes?: number

                                                                                                              Pool tasks back pressure worker nodes.

                                                                                                              +
                                                                                                              busyWorkerNodes: number

                                                                                                              Pool busy worker nodes.

                                                                                                              +
                                                                                                              defaultStrategy:
                                                                                                                  | "FAIR_SHARE"
                                                                                                                  | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                  | "LEAST_BUSY"
                                                                                                                  | "LEAST_ELU"
                                                                                                                  | "LEAST_USED"
                                                                                                                  | "ROUND_ROBIN"
                                                                                                                  | "WEIGHTED_ROUND_ROBIN"
                                                                                                              dynamicWorkerNodes?: number

                                                                                                              Pool dynamic worker nodes.

                                                                                                              +
                                                                                                              elu?: {
                                                                                                                  active: {
                                                                                                                      average?: number;
                                                                                                                      maximum: number;
                                                                                                                      median?: number;
                                                                                                                      minimum: number;
                                                                                                                  };
                                                                                                                  idle: {
                                                                                                                      average?: number;
                                                                                                                      maximum: number;
                                                                                                                      median?: number;
                                                                                                                      minimum: number;
                                                                                                                  };
                                                                                                                  utilization: { average?: number; median?: number };
                                                                                                              }
                                                                                                              executedTasks: number
                                                                                                              executingTasks: number
                                                                                                              failedTasks: number
                                                                                                              idleWorkerNodes: number

                                                                                                              Pool idle worker nodes.

                                                                                                              +
                                                                                                              maxQueuedTasks?: number
                                                                                                              maxSize: number
                                                                                                              minSize: number
                                                                                                              queuedTasks?: number
                                                                                                              ready: boolean
                                                                                                              runTime?: {
                                                                                                                  average?: number;
                                                                                                                  maximum: number;
                                                                                                                  median?: number;
                                                                                                                  minimum: number;
                                                                                                              }
                                                                                                              started: boolean
                                                                                                              stealingWorkerNodes?: number

                                                                                                              Pool tasks stealing worker nodes.

                                                                                                              +
                                                                                                              stolenTasks?: number
                                                                                                              strategyRetries: number
                                                                                                              type: "fixed" | "dynamic"
                                                                                                              utilization?: number

                                                                                                              Pool utilization.

                                                                                                              +
                                                                                                              version: string
                                                                                                              waitTime?: {
                                                                                                                  average?: number;
                                                                                                                  maximum: number;
                                                                                                                  median?: number;
                                                                                                                  minimum: number;
                                                                                                              }
                                                                                                              worker: "cluster" | "thread"
                                                                                                              workerNodes: number

                                                                                                              Pool total worker nodes.

                                                                                                              +
                                                                                                              diff --git a/docs/interfaces/src.PoolOptions.html b/docs/interfaces/src.PoolOptions.html index 9b03273f8..3fb55f945 100644 --- a/docs/interfaces/src.PoolOptions.html +++ b/docs/interfaces/src.PoolOptions.html @@ -1,6 +1,6 @@ -PoolOptions | poolifier - v5.1.7
                                                                                                              poolifier - v5.1.7
                                                                                                                Preparing search index...

                                                                                                                Interface PoolOptions<Worker>

                                                                                                                Options for a poolifier pool.

                                                                                                                +PoolOptions | poolifier - v5.2.0
                                                                                                                poolifier - v5.2.0
                                                                                                                  Preparing search index...

                                                                                                                  Interface PoolOptions<Worker>

                                                                                                                  Options for a poolifier pool.

                                                                                                                  interface PoolOptions<Worker extends IWorker> {
                                                                                                                      enableEvents?: boolean;
                                                                                                                      enableTasksQueue?: boolean;
                                                                                                                      env?: Record<string, unknown>;
                                                                                                                      errorHandler?: ErrorHandler<Worker>;
                                                                                                                      exitHandler?: ExitHandler<Worker>;
                                                                                                                      messageHandler?: MessageHandler<Worker>;
                                                                                                                      onlineHandler?: OnlineHandler<Worker>;
                                                                                                                      restartWorkerOnError?: boolean;
                                                                                                                      settings?: ClusterSettings;
                                                                                                                      startWorkers?: boolean;
                                                                                                                      tasksQueueOptions?: TasksQueueOptions;
                                                                                                                      workerChoiceStrategy?:
                                                                                                                          | "FAIR_SHARE"
                                                                                                                          | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                          | "LEAST_BUSY"
                                                                                                                          | "LEAST_ELU"
                                                                                                                          | "LEAST_USED"
                                                                                                                          | "ROUND_ROBIN"
                                                                                                                          | "WEIGHTED_ROUND_ROBIN";
                                                                                                                      workerChoiceStrategyOptions?: WorkerChoiceStrategyOptions;
                                                                                                                      workerOptions?: WorkerOptions;
                                                                                                                  }

                                                                                                                  Type Parameters

                                                                                                                  • Worker extends IWorker

                                                                                                                    Type of worker.

                                                                                                                    -
                                                                                                                  Index

                                                                                                                  Properties

                                                                                                                  Index

                                                                                                                  Properties

                                                                                                                  true
                                                                                                                   
                                                                                                                  -
                                                                                                                  enableTasksQueue?: boolean

                                                                                                                  Pool worker node tasks queue.

                                                                                                                  +
                                                                                                                  enableTasksQueue?: boolean

                                                                                                                  Pool worker node tasks queue.

                                                                                                                  false
                                                                                                                   
                                                                                                                  -
                                                                                                                  env?: Record<string, unknown>

                                                                                                                  Key/value pairs to add to worker process environment.

                                                                                                                  +
                                                                                                                  env?: Record<string, unknown>

                                                                                                                  Key/value pairs to add to worker process environment.

                                                                                                                  errorHandler?: ErrorHandler<Worker>

                                                                                                                  A function that will listen for error event on each worker.

                                                                                                                  +
                                                                                                                  errorHandler?: ErrorHandler<Worker>

                                                                                                                  A function that will listen for error event on each worker.

                                                                                                                  () => {}

                                                                                                                  -
                                                                                                                  exitHandler?: ExitHandler<Worker>

                                                                                                                  A function that will listen for exit event on each worker.

                                                                                                                  +
                                                                                                                  exitHandler?: ExitHandler<Worker>

                                                                                                                  A function that will listen for exit event on each worker.

                                                                                                                  () => {}

                                                                                                                  -
                                                                                                                  messageHandler?: MessageHandler<Worker>

                                                                                                                  A function that will listen for message event on each worker.

                                                                                                                  +
                                                                                                                  messageHandler?: MessageHandler<Worker>

                                                                                                                  A function that will listen for message event on each worker.

                                                                                                                  () => {}

                                                                                                                  -
                                                                                                                  onlineHandler?: OnlineHandler<Worker>

                                                                                                                  A function that will listen for online event on each worker.

                                                                                                                  +
                                                                                                                  onlineHandler?: OnlineHandler<Worker>

                                                                                                                  A function that will listen for online event on each worker.

                                                                                                                  () => {}

                                                                                                                  -
                                                                                                                  restartWorkerOnError?: boolean

                                                                                                                  Restart worker on error.

                                                                                                                  -
                                                                                                                  settings?: ClusterSettings

                                                                                                                  Cluster settings.

                                                                                                                  +
                                                                                                                  restartWorkerOnError?: boolean

                                                                                                                  Restart worker on error.

                                                                                                                  +
                                                                                                                  settings?: ClusterSettings

                                                                                                                  Cluster settings.

                                                                                                                  startWorkers?: boolean

                                                                                                                  Whether to start the minimum number of workers at pool initialization.

                                                                                                                  +
                                                                                                                  startWorkers?: boolean

                                                                                                                  Whether to start the minimum number of workers at pool initialization.

                                                                                                                  true
                                                                                                                   
                                                                                                                  -
                                                                                                                  tasksQueueOptions?: TasksQueueOptions

                                                                                                                  Pool worker node tasks queue options.

                                                                                                                  -
                                                                                                                  workerChoiceStrategy?:
                                                                                                                      | "FAIR_SHARE"
                                                                                                                      | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                      | "LEAST_BUSY"
                                                                                                                      | "LEAST_ELU"
                                                                                                                      | "LEAST_USED"
                                                                                                                      | "ROUND_ROBIN"
                                                                                                                      | "WEIGHTED_ROUND_ROBIN"

                                                                                                                  The default worker choice strategy to use in this pool.

                                                                                                                  +
                                                                                                                  tasksQueueOptions?: TasksQueueOptions

                                                                                                                  Pool worker node tasks queue options.

                                                                                                                  +
                                                                                                                  workerChoiceStrategy?:
                                                                                                                      | "FAIR_SHARE"
                                                                                                                      | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                      | "LEAST_BUSY"
                                                                                                                      | "LEAST_ELU"
                                                                                                                      | "LEAST_USED"
                                                                                                                      | "ROUND_ROBIN"
                                                                                                                      | "WEIGHTED_ROUND_ROBIN"

                                                                                                                  The default worker choice strategy to use in this pool.

                                                                                                                  WorkerChoiceStrategies.LEAST_USED
                                                                                                                   
                                                                                                                  -
                                                                                                                  workerChoiceStrategyOptions?: WorkerChoiceStrategyOptions

                                                                                                                  The worker choice strategy options.

                                                                                                                  -
                                                                                                                  workerOptions?: WorkerOptions

                                                                                                                  Worker options.

                                                                                                                  +
                                                                                                                  workerChoiceStrategyOptions?: WorkerChoiceStrategyOptions

                                                                                                                  The worker choice strategy options.

                                                                                                                  +
                                                                                                                  workerOptions?: WorkerOptions

                                                                                                                  Worker options.

                                                                                                                  +
                                                                                                                  diff --git a/docs/interfaces/src.PriorityQueue.html b/docs/interfaces/src.PriorityQueue.html index 6b954640d..a8257d60d 100644 --- a/docs/interfaces/src.PriorityQueue.html +++ b/docs/interfaces/src.PriorityQueue.html @@ -1,6 +1,6 @@ -PriorityQueue | poolifier - v5.1.7
                                                                                                                  poolifier - v5.1.7
                                                                                                                    Preparing search index...

                                                                                                                    Interface PriorityQueue<T>Internal

                                                                                                                    Priority queue.

                                                                                                                    +PriorityQueue | poolifier - v5.2.0
                                                                                                                    poolifier - v5.2.0
                                                                                                                      Preparing search index...

                                                                                                                      Interface PriorityQueue<T>Internal

                                                                                                                      Priority queue.

                                                                                                                      interface PriorityQueue<T> {
                                                                                                                          maxSize: number;
                                                                                                                          size: number;
                                                                                                                          get buckets(): number;
                                                                                                                          get enablePriority(): boolean;
                                                                                                                          set enablePriority(enablePriority: boolean): void;
                                                                                                                          "[iterator]"(): Iterator<T>;
                                                                                                                          clear(): void;
                                                                                                                          delete(data: T): boolean;
                                                                                                                          dequeue(bucket?: number): T | undefined;
                                                                                                                          enqueue(data: T, priority?: number): number;
                                                                                                                      }

                                                                                                                      Type Parameters

                                                                                                                      • T

                                                                                                                        Type of priority queue data.

                                                                                                                        -
                                                                                                                      Index

                                                                                                                      Properties

                                                                                                                      Index

                                                                                                                      Properties

                                                                                                                      Accessors

                                                                                                                      buckets enablePriority @@ -10,25 +10,25 @@ dequeue enqueue

                                                                                                                      Properties

                                                                                                                      maxSize: number

                                                                                                                      The priority queue maximum size.

                                                                                                                      -
                                                                                                                      size: number

                                                                                                                      The priority queue size.

                                                                                                                      -

                                                                                                                      Accessors

                                                                                                                      size: number

                                                                                                                      The priority queue size.

                                                                                                                      +

                                                                                                                      Accessors

                                                                                                                      • get buckets(): number

                                                                                                                        The number of filled prioritized buckets.

                                                                                                                        Returns number

                                                                                                                        The number of filled prioritized buckets.

                                                                                                                        -

                                                                                                                      Methods

                                                                                                                      • Returns an iterator for the priority queue.

                                                                                                                        +

                                                                                                                      Returns void

                                                                                                                      Methods

                                                                                                                      • Deletes the given data from the priority queue.

                                                                                                                        Parameters

                                                                                                                        • data: T

                                                                                                                          Data to delete.

                                                                                                                        Returns boolean

                                                                                                                        true if the data was deleted, false otherwise.

                                                                                                                        -
                                                                                                                      • Dequeue data from the priority queue.

                                                                                                                        Parameters

                                                                                                                        • Optionalbucket: number

                                                                                                                          The prioritized bucket to dequeue from.

                                                                                                                        Returns T | undefined

                                                                                                                        The dequeued data or undefined if the priority queue is empty.

                                                                                                                        -
                                                                                                                      • Enqueue data into the priority queue.

                                                                                                                        Parameters

                                                                                                                        • data: T

                                                                                                                          Data to enqueue.

                                                                                                                        • Optionalpriority: number

                                                                                                                          Priority of the data. Lower values have higher priority.

                                                                                                                        Returns number

                                                                                                                        The new size of the priority queue.

                                                                                                                        -
                                                                                                                      +
                                                                                                                      diff --git a/docs/interfaces/src.PromiseResponseWrapper.html b/docs/interfaces/src.PromiseResponseWrapper.html index e4309f68b..64ff7bd04 100644 --- a/docs/interfaces/src.PromiseResponseWrapper.html +++ b/docs/interfaces/src.PromiseResponseWrapper.html @@ -1,13 +1,13 @@ -PromiseResponseWrapper | poolifier - v5.1.7
                                                                                                                      poolifier - v5.1.7
                                                                                                                        Preparing search index...

                                                                                                                        Interface PromiseResponseWrapper<Response>Internal

                                                                                                                        An object holding the task execution response promise resolve/reject callbacks.

                                                                                                                        +PromiseResponseWrapper | poolifier - v5.2.0
                                                                                                                        poolifier - v5.2.0
                                                                                                                          Preparing search index...

                                                                                                                          Interface PromiseResponseWrapper<Response>Internal

                                                                                                                          An object holding the task execution response promise resolve/reject callbacks.

                                                                                                                          interface PromiseResponseWrapper<Response = unknown> {
                                                                                                                              abortSignal?: AbortSignal;
                                                                                                                              asyncResource?: AsyncResource;
                                                                                                                              reject: (reason?: unknown) => void;
                                                                                                                              resolve: (value: Response | PromiseLike<Response>) => void;
                                                                                                                              workerNodeKey: number;
                                                                                                                          }

                                                                                                                          Type Parameters

                                                                                                                          • Response = unknown

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

                                                                                                                            -
                                                                                                                          Index

                                                                                                                          Properties

                                                                                                                          Index

                                                                                                                          Properties

                                                                                                                          abortSignal?: AbortSignal

                                                                                                                          The task abort signal.

                                                                                                                          -
                                                                                                                          asyncResource?: AsyncResource

                                                                                                                          The asynchronous resource used to track the task execution.

                                                                                                                          -
                                                                                                                          reject: (reason?: unknown) => void

                                                                                                                          Reject callback to reject the promise.

                                                                                                                          -
                                                                                                                          resolve: (value: Response | PromiseLike<Response>) => void

                                                                                                                          Resolve callback to fulfill the promise.

                                                                                                                          -
                                                                                                                          workerNodeKey: number

                                                                                                                          The worker node key executing the task.

                                                                                                                          -
                                                                                                                          +
                                                                                                                          asyncResource?: AsyncResource

                                                                                                                          The asynchronous resource used to track the task execution.

                                                                                                                          +
                                                                                                                          reject: (reason?: unknown) => void

                                                                                                                          Reject callback to reject the promise.

                                                                                                                          +
                                                                                                                          resolve: (value: Response | PromiseLike<Response>) => void

                                                                                                                          Resolve callback to fulfill the promise.

                                                                                                                          +
                                                                                                                          workerNodeKey: number

                                                                                                                          The worker node key executing the task.

                                                                                                                          +
                                                                                                                          diff --git a/docs/interfaces/src.StrategyData.html b/docs/interfaces/src.StrategyData.html index 536ca868a..057231cf0 100644 --- a/docs/interfaces/src.StrategyData.html +++ b/docs/interfaces/src.StrategyData.html @@ -1,3 +1,3 @@ -StrategyData | poolifier - v5.1.7
                                                                                                                          poolifier - v5.1.7
                                                                                                                            Preparing search index...

                                                                                                                            Interface StrategyDataInternal

                                                                                                                            Worker choice strategy data.

                                                                                                                            -
                                                                                                                            interface StrategyData {
                                                                                                                                virtualTaskEndTimestamp?: number;
                                                                                                                            }
                                                                                                                            Index

                                                                                                                            Properties

                                                                                                                            virtualTaskEndTimestamp?: number
                                                                                                                            +StrategyData | poolifier - v5.2.0
                                                                                                                            poolifier - v5.2.0
                                                                                                                              Preparing search index...

                                                                                                                              Interface StrategyDataInternal

                                                                                                                              Worker choice strategy data.

                                                                                                                              +
                                                                                                                              interface StrategyData {
                                                                                                                                  virtualTaskEndTimestamp?: number;
                                                                                                                              }
                                                                                                                              Index

                                                                                                                              Properties

                                                                                                                              virtualTaskEndTimestamp?: number
                                                                                                                              diff --git a/docs/interfaces/src.StrategyPolicy.html b/docs/interfaces/src.StrategyPolicy.html index a163cb5d2..91aa0fb3d 100644 --- a/docs/interfaces/src.StrategyPolicy.html +++ b/docs/interfaces/src.StrategyPolicy.html @@ -1,6 +1,6 @@ -StrategyPolicy | poolifier - v5.1.7
                                                                                                                              poolifier - v5.1.7
                                                                                                                                Preparing search index...

                                                                                                                                Interface StrategyPolicyInternal

                                                                                                                                Strategy policy.

                                                                                                                                -
                                                                                                                                interface StrategyPolicy {
                                                                                                                                    dynamicWorkerReady: boolean;
                                                                                                                                    dynamicWorkerUsage: boolean;
                                                                                                                                }
                                                                                                                                Index

                                                                                                                                Properties

                                                                                                                                dynamicWorkerReady +StrategyPolicy | poolifier - v5.2.0
                                                                                                                                poolifier - v5.2.0
                                                                                                                                  Preparing search index...

                                                                                                                                  Interface StrategyPolicyInternal

                                                                                                                                  Strategy policy.

                                                                                                                                  +
                                                                                                                                  interface StrategyPolicy {
                                                                                                                                      dynamicWorkerReady: boolean;
                                                                                                                                      dynamicWorkerUsage: boolean;
                                                                                                                                  }
                                                                                                                                  Index

                                                                                                                                  Properties

                                                                                                                                  dynamicWorkerReady: boolean

                                                                                                                                  Expects the newly created dynamic worker to be flagged as ready.

                                                                                                                                  -
                                                                                                                                  dynamicWorkerUsage: boolean

                                                                                                                                  Expects tasks execution on the newly created dynamic worker.

                                                                                                                                  -
                                                                                                                                  +
                                                                                                                                  dynamicWorkerUsage: boolean

                                                                                                                                  Expects tasks execution on the newly created dynamic worker.

                                                                                                                                  +
                                                                                                                                  diff --git a/docs/interfaces/src.Task.html b/docs/interfaces/src.Task.html index f77ee8fa6..1cf7afeb5 100644 --- a/docs/interfaces/src.Task.html +++ b/docs/interfaces/src.Task.html @@ -1,6 +1,6 @@ -Task | poolifier - v5.1.7
                                                                                                                                  poolifier - v5.1.7
                                                                                                                                    Preparing search index...

                                                                                                                                    Interface Task<Data>Internal

                                                                                                                                    Message object that is passed as a task between main worker and worker.

                                                                                                                                    +Task | poolifier - v5.2.0
                                                                                                                                    poolifier - v5.2.0
                                                                                                                                      Preparing search index...

                                                                                                                                      Interface Task<Data>Internal

                                                                                                                                      Message object that is passed as a task between main worker and worker.

                                                                                                                                      interface Task<Data = unknown> {
                                                                                                                                          abortable?: boolean;
                                                                                                                                          data?: Data;
                                                                                                                                          name?: string;
                                                                                                                                          priority?: number;
                                                                                                                                          strategy?:
                                                                                                                                              | "FAIR_SHARE"
                                                                                                                                              | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                              | "LEAST_BUSY"
                                                                                                                                              | "LEAST_ELU"
                                                                                                                                              | "LEAST_USED"
                                                                                                                                              | "ROUND_ROBIN"
                                                                                                                                              | "WEIGHTED_ROUND_ROBIN";
                                                                                                                                          taskId?: `${string}-${string}-${string}-${string}-${string}`;
                                                                                                                                          timestamp?: number;
                                                                                                                                          transferList?: readonly Transferable[];
                                                                                                                                      }

                                                                                                                                      Type Parameters

                                                                                                                                      • Data = unknown

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

                                                                                                                                        -

                                                                                                                                      Hierarchy (View Summary)

                                                                                                                                      Index

                                                                                                                                      Properties

                                                                                                                                      Hierarchy (View Summary)

                                                                                                                                      Index

                                                                                                                                      Properties

                                                                                                                                      abortable?: boolean

                                                                                                                                      Whether the task is abortable or not.

                                                                                                                                      -
                                                                                                                                      data?: Data

                                                                                                                                      Task input data that will be passed to the worker.

                                                                                                                                      -
                                                                                                                                      name?: string

                                                                                                                                      Task name.

                                                                                                                                      -
                                                                                                                                      priority?: number

                                                                                                                                      Task priority. Lower values have higher priority.

                                                                                                                                      +
                                                                                                                                      data?: Data

                                                                                                                                      Task input data that will be passed to the worker.

                                                                                                                                      +
                                                                                                                                      name?: string

                                                                                                                                      Task name.

                                                                                                                                      +
                                                                                                                                      priority?: number

                                                                                                                                      Task priority. Lower values have higher priority.

                                                                                                                                      0
                                                                                                                                       
                                                                                                                                      -
                                                                                                                                      strategy?:
                                                                                                                                          | "FAIR_SHARE"
                                                                                                                                          | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                          | "LEAST_BUSY"
                                                                                                                                          | "LEAST_ELU"
                                                                                                                                          | "LEAST_USED"
                                                                                                                                          | "ROUND_ROBIN"
                                                                                                                                          | "WEIGHTED_ROUND_ROBIN"

                                                                                                                                      Task worker choice strategy.

                                                                                                                                      -
                                                                                                                                      taskId?: `${string}-${string}-${string}-${string}-${string}`

                                                                                                                                      Task UUID.

                                                                                                                                      -
                                                                                                                                      timestamp?: number

                                                                                                                                      Timestamp.

                                                                                                                                      -
                                                                                                                                      transferList?: readonly Transferable[]

                                                                                                                                      Array of transferable objects.

                                                                                                                                      -
                                                                                                                                      +
                                                                                                                                      strategy?:
                                                                                                                                          | "FAIR_SHARE"
                                                                                                                                          | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                          | "LEAST_BUSY"
                                                                                                                                          | "LEAST_ELU"
                                                                                                                                          | "LEAST_USED"
                                                                                                                                          | "ROUND_ROBIN"
                                                                                                                                          | "WEIGHTED_ROUND_ROBIN"

                                                                                                                                      Task worker choice strategy.

                                                                                                                                      +
                                                                                                                                      taskId?: `${string}-${string}-${string}-${string}-${string}`

                                                                                                                                      Task UUID.

                                                                                                                                      +
                                                                                                                                      timestamp?: number

                                                                                                                                      Timestamp.

                                                                                                                                      +
                                                                                                                                      transferList?: readonly Transferable[]

                                                                                                                                      Array of transferable objects.

                                                                                                                                      +
                                                                                                                                      diff --git a/docs/interfaces/src.TaskFunctionObject.html b/docs/interfaces/src.TaskFunctionObject.html index ad0a876eb..618df07f7 100644 --- a/docs/interfaces/src.TaskFunctionObject.html +++ b/docs/interfaces/src.TaskFunctionObject.html @@ -1,10 +1,15 @@ -TaskFunctionObject | poolifier - v5.1.7
                                                                                                                                      poolifier - v5.1.7
                                                                                                                                        Preparing search index...

                                                                                                                                        Interface TaskFunctionObject<Data, Response>

                                                                                                                                        Task function object.

                                                                                                                                        -
                                                                                                                                        interface TaskFunctionObject<Data = unknown, Response = unknown> {
                                                                                                                                            priority?: number;
                                                                                                                                            strategy?:
                                                                                                                                                | "FAIR_SHARE"
                                                                                                                                                | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                | "LEAST_BUSY"
                                                                                                                                                | "LEAST_ELU"
                                                                                                                                                | "LEAST_USED"
                                                                                                                                                | "ROUND_ROBIN"
                                                                                                                                                | "WEIGHTED_ROUND_ROBIN";
                                                                                                                                            taskFunction: TaskFunction<Data, Response>;
                                                                                                                                        }

                                                                                                                                        Type Parameters

                                                                                                                                        • Data = unknown

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

                                                                                                                                          +TaskFunctionObject | poolifier - v5.2.0
                                                                                                                                          poolifier - v5.2.0
                                                                                                                                            Preparing search index...

                                                                                                                                            Interface TaskFunctionObject<Data, Response>

                                                                                                                                            Task function object.

                                                                                                                                            +
                                                                                                                                            interface TaskFunctionObject<Data = unknown, Response = unknown> {
                                                                                                                                                priority?: number;
                                                                                                                                                strategy?:
                                                                                                                                                    | "FAIR_SHARE"
                                                                                                                                                    | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                    | "LEAST_BUSY"
                                                                                                                                                    | "LEAST_ELU"
                                                                                                                                                    | "LEAST_USED"
                                                                                                                                                    | "ROUND_ROBIN"
                                                                                                                                                    | "WEIGHTED_ROUND_ROBIN";
                                                                                                                                                taskFunction: TaskFunction<Data, Response>;
                                                                                                                                                workerNodeKeys?: number[];
                                                                                                                                            }

                                                                                                                                            Type Parameters

                                                                                                                                            • 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 structured-cloneable data.

                                                                                                                                              -
                                                                                                                                            Index

                                                                                                                                            Properties

                                                                                                                                          Index

                                                                                                                                          Properties

                                                                                                                                          priority?: number

                                                                                                                                          Task function priority. Lower values have higher priority.

                                                                                                                                          -
                                                                                                                                          strategy?:
                                                                                                                                              | "FAIR_SHARE"
                                                                                                                                              | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                              | "LEAST_BUSY"
                                                                                                                                              | "LEAST_ELU"
                                                                                                                                              | "LEAST_USED"
                                                                                                                                              | "ROUND_ROBIN"
                                                                                                                                              | "WEIGHTED_ROUND_ROBIN"

                                                                                                                                          Task function worker choice strategy.

                                                                                                                                          -
                                                                                                                                          taskFunction: TaskFunction<Data, Response>

                                                                                                                                          Task function.

                                                                                                                                          -
                                                                                                                                          +
                                                                                                                                          strategy?:
                                                                                                                                              | "FAIR_SHARE"
                                                                                                                                              | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                              | "LEAST_BUSY"
                                                                                                                                              | "LEAST_ELU"
                                                                                                                                              | "LEAST_USED"
                                                                                                                                              | "ROUND_ROBIN"
                                                                                                                                              | "WEIGHTED_ROUND_ROBIN"

                                                                                                                                          Task function worker choice strategy.

                                                                                                                                          +
                                                                                                                                          taskFunction: TaskFunction<Data, Response>

                                                                                                                                          Task function.

                                                                                                                                          +
                                                                                                                                          workerNodeKeys?: number[]

                                                                                                                                          Task function worker node keys affinity. +Restricts task execution to specified worker nodes by their indices. +Must contain valid indices within [0, pool max size - 1]. +If undefined, task can execute on any worker node.

                                                                                                                                          +
                                                                                                                                          diff --git a/docs/interfaces/src.TaskFunctionOperationResult.html b/docs/interfaces/src.TaskFunctionOperationResult.html index 59f525b9c..23007292a 100644 --- a/docs/interfaces/src.TaskFunctionOperationResult.html +++ b/docs/interfaces/src.TaskFunctionOperationResult.html @@ -1,4 +1,4 @@ -TaskFunctionOperationResult | poolifier - v5.1.7
                                                                                                                                          poolifier - v5.1.7
                                                                                                                                            Preparing search index...

                                                                                                                                            Interface TaskFunctionOperationResult

                                                                                                                                            Task function operation result.

                                                                                                                                            -
                                                                                                                                            interface TaskFunctionOperationResult {
                                                                                                                                                error?: Error;
                                                                                                                                                status: boolean;
                                                                                                                                            }
                                                                                                                                            Index

                                                                                                                                            Properties

                                                                                                                                            error? +TaskFunctionOperationResult | poolifier - v5.2.0
                                                                                                                                            poolifier - v5.2.0
                                                                                                                                              Preparing search index...

                                                                                                                                              Interface TaskFunctionOperationResult

                                                                                                                                              Task function operation result.

                                                                                                                                              +
                                                                                                                                              interface TaskFunctionOperationResult {
                                                                                                                                                  error?: Error;
                                                                                                                                                  status: boolean;
                                                                                                                                              }
                                                                                                                                              Index

                                                                                                                                              Properties

                                                                                                                                              Properties

                                                                                                                                              error?: Error
                                                                                                                                              status: boolean
                                                                                                                                              +

                                                                                                                                              Properties

                                                                                                                                              error?: Error
                                                                                                                                              status: boolean
                                                                                                                                              diff --git a/docs/interfaces/src.TaskFunctionProperties.html b/docs/interfaces/src.TaskFunctionProperties.html index eae0b65e1..d0d1b07a5 100644 --- a/docs/interfaces/src.TaskFunctionProperties.html +++ b/docs/interfaces/src.TaskFunctionProperties.html @@ -1,8 +1,13 @@ -TaskFunctionProperties | poolifier - v5.1.7
                                                                                                                                              poolifier - v5.1.7
                                                                                                                                                Preparing search index...

                                                                                                                                                Interface TaskFunctionProperties

                                                                                                                                                Task function properties.

                                                                                                                                                -
                                                                                                                                                interface TaskFunctionProperties {
                                                                                                                                                    name: string;
                                                                                                                                                    priority?: number;
                                                                                                                                                    strategy?:
                                                                                                                                                        | "FAIR_SHARE"
                                                                                                                                                        | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                        | "LEAST_BUSY"
                                                                                                                                                        | "LEAST_ELU"
                                                                                                                                                        | "LEAST_USED"
                                                                                                                                                        | "ROUND_ROBIN"
                                                                                                                                                        | "WEIGHTED_ROUND_ROBIN";
                                                                                                                                                }
                                                                                                                                                Index

                                                                                                                                                Properties

                                                                                                                                                name +TaskFunctionProperties | poolifier - v5.2.0
                                                                                                                                                poolifier - v5.2.0
                                                                                                                                                  Preparing search index...

                                                                                                                                                  Interface TaskFunctionProperties

                                                                                                                                                  Task function properties.

                                                                                                                                                  +
                                                                                                                                                  interface TaskFunctionProperties {
                                                                                                                                                      name: string;
                                                                                                                                                      priority?: number;
                                                                                                                                                      strategy?:
                                                                                                                                                          | "FAIR_SHARE"
                                                                                                                                                          | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                          | "LEAST_BUSY"
                                                                                                                                                          | "LEAST_ELU"
                                                                                                                                                          | "LEAST_USED"
                                                                                                                                                          | "ROUND_ROBIN"
                                                                                                                                                          | "WEIGHTED_ROUND_ROBIN";
                                                                                                                                                      workerNodeKeys?: number[];
                                                                                                                                                  }
                                                                                                                                                  Index

                                                                                                                                                  Properties

                                                                                                                                                  name: string

                                                                                                                                                  Task function name.

                                                                                                                                                  -
                                                                                                                                                  priority?: number

                                                                                                                                                  Task function priority. Lower values have higher priority.

                                                                                                                                                  -
                                                                                                                                                  strategy?:
                                                                                                                                                      | "FAIR_SHARE"
                                                                                                                                                      | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                      | "LEAST_BUSY"
                                                                                                                                                      | "LEAST_ELU"
                                                                                                                                                      | "LEAST_USED"
                                                                                                                                                      | "ROUND_ROBIN"
                                                                                                                                                      | "WEIGHTED_ROUND_ROBIN"

                                                                                                                                                  Task function worker choice strategy.

                                                                                                                                                  -
                                                                                                                                                  +
                                                                                                                                                  priority?: number

                                                                                                                                                  Task function priority. Lower values have higher priority.

                                                                                                                                                  +
                                                                                                                                                  strategy?:
                                                                                                                                                      | "FAIR_SHARE"
                                                                                                                                                      | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                      | "LEAST_BUSY"
                                                                                                                                                      | "LEAST_ELU"
                                                                                                                                                      | "LEAST_USED"
                                                                                                                                                      | "ROUND_ROBIN"
                                                                                                                                                      | "WEIGHTED_ROUND_ROBIN"

                                                                                                                                                  Task function worker choice strategy.

                                                                                                                                                  +
                                                                                                                                                  workerNodeKeys?: number[]

                                                                                                                                                  Task function worker node keys affinity. +Restricts task execution to specified worker nodes by their indices. +Must contain valid indices within [0, pool max size - 1]. +If undefined, task can execute on any worker node.

                                                                                                                                                  +
                                                                                                                                                  diff --git a/docs/interfaces/src.TaskPerformance.html b/docs/interfaces/src.TaskPerformance.html index 594be2fb3..86358ce28 100644 --- a/docs/interfaces/src.TaskPerformance.html +++ b/docs/interfaces/src.TaskPerformance.html @@ -1,10 +1,10 @@ -TaskPerformance | poolifier - v5.1.7
                                                                                                                                                  poolifier - v5.1.7
                                                                                                                                                    Preparing search index...

                                                                                                                                                    Interface TaskPerformanceInternal

                                                                                                                                                    Task performance.

                                                                                                                                                    -
                                                                                                                                                    interface TaskPerformance {
                                                                                                                                                        elu?: EventLoopUtilization;
                                                                                                                                                        name: string;
                                                                                                                                                        runTime?: number;
                                                                                                                                                        timestamp: number;
                                                                                                                                                    }
                                                                                                                                                    Index

                                                                                                                                                    Properties

                                                                                                                                                    elu? +TaskPerformance | poolifier - v5.2.0
                                                                                                                                                    poolifier - v5.2.0
                                                                                                                                                      Preparing search index...

                                                                                                                                                      Interface TaskPerformanceInternal

                                                                                                                                                      Task performance.

                                                                                                                                                      +
                                                                                                                                                      interface TaskPerformance {
                                                                                                                                                          elu?: EventLoopUtilization;
                                                                                                                                                          name: string;
                                                                                                                                                          runTime?: number;
                                                                                                                                                          timestamp: number;
                                                                                                                                                      }
                                                                                                                                                      Index

                                                                                                                                                      Properties

                                                                                                                                                      elu?: EventLoopUtilization

                                                                                                                                                      Task event loop utilization.

                                                                                                                                                      -
                                                                                                                                                      name: string

                                                                                                                                                      Task name.

                                                                                                                                                      -
                                                                                                                                                      runTime?: number

                                                                                                                                                      Task runtime.

                                                                                                                                                      -
                                                                                                                                                      timestamp: number

                                                                                                                                                      Task performance timestamp.

                                                                                                                                                      -
                                                                                                                                                      +
                                                                                                                                                      name: string

                                                                                                                                                      Task name.

                                                                                                                                                      +
                                                                                                                                                      runTime?: number

                                                                                                                                                      Task runtime.

                                                                                                                                                      +
                                                                                                                                                      timestamp: number

                                                                                                                                                      Task performance timestamp.

                                                                                                                                                      +
                                                                                                                                                      diff --git a/docs/interfaces/src.TaskStatistics.html b/docs/interfaces/src.TaskStatistics.html index fb9e7d1f3..798f6d6d9 100644 --- a/docs/interfaces/src.TaskStatistics.html +++ b/docs/interfaces/src.TaskStatistics.html @@ -1,5 +1,5 @@ -TaskStatistics | poolifier - v5.1.7
                                                                                                                                                      poolifier - v5.1.7
                                                                                                                                                        Preparing search index...

                                                                                                                                                        Interface TaskStatisticsInternal

                                                                                                                                                        Task statistics.

                                                                                                                                                        -
                                                                                                                                                        interface TaskStatistics {
                                                                                                                                                            executed: number;
                                                                                                                                                            executing: number;
                                                                                                                                                            failed: number;
                                                                                                                                                            maxQueued?: number;
                                                                                                                                                            queued: number;
                                                                                                                                                            sequentiallyStolen: number;
                                                                                                                                                            stolen: number;
                                                                                                                                                        }
                                                                                                                                                        Index

                                                                                                                                                        Properties

                                                                                                                                                        executed +TaskStatistics | poolifier - v5.2.0
                                                                                                                                                        poolifier - v5.2.0
                                                                                                                                                          Preparing search index...

                                                                                                                                                          Interface TaskStatisticsInternal

                                                                                                                                                          Task statistics.

                                                                                                                                                          +
                                                                                                                                                          interface TaskStatistics {
                                                                                                                                                              executed: number;
                                                                                                                                                              executing: number;
                                                                                                                                                              failed: number;
                                                                                                                                                              maxQueued?: number;
                                                                                                                                                              queued: number;
                                                                                                                                                              sequentiallyStolen: number;
                                                                                                                                                              stolen: number;
                                                                                                                                                          }
                                                                                                                                                          Index

                                                                                                                                                          Properties

                                                                                                                                                          executed: number

                                                                                                                                                          Number of executed tasks.

                                                                                                                                                          -
                                                                                                                                                          executing: number

                                                                                                                                                          Number of executing tasks.

                                                                                                                                                          -
                                                                                                                                                          failed: number

                                                                                                                                                          Number of failed tasks.

                                                                                                                                                          -
                                                                                                                                                          maxQueued?: number

                                                                                                                                                          Maximum number of queued tasks.

                                                                                                                                                          -
                                                                                                                                                          queued: number

                                                                                                                                                          Number of queued tasks.

                                                                                                                                                          -
                                                                                                                                                          sequentiallyStolen: number

                                                                                                                                                          Number of sequentially stolen tasks.

                                                                                                                                                          -
                                                                                                                                                          stolen: number

                                                                                                                                                          Number of stolen tasks.

                                                                                                                                                          -
                                                                                                                                                          +
                                                                                                                                                          executing: number

                                                                                                                                                          Number of executing tasks.

                                                                                                                                                          +
                                                                                                                                                          failed: number

                                                                                                                                                          Number of failed tasks.

                                                                                                                                                          +
                                                                                                                                                          maxQueued?: number

                                                                                                                                                          Maximum number of queued tasks.

                                                                                                                                                          +
                                                                                                                                                          queued: number

                                                                                                                                                          Number of queued tasks.

                                                                                                                                                          +
                                                                                                                                                          sequentiallyStolen: number

                                                                                                                                                          Number of sequentially stolen tasks.

                                                                                                                                                          +
                                                                                                                                                          stolen: number

                                                                                                                                                          Number of stolen tasks.

                                                                                                                                                          +
                                                                                                                                                          diff --git a/docs/interfaces/src.TaskStatisticsRequirements.html b/docs/interfaces/src.TaskStatisticsRequirements.html index be7b69a19..3f4e83d8d 100644 --- a/docs/interfaces/src.TaskStatisticsRequirements.html +++ b/docs/interfaces/src.TaskStatisticsRequirements.html @@ -1,8 +1,8 @@ -TaskStatisticsRequirements | poolifier - v5.1.7
                                                                                                                                                          poolifier - v5.1.7
                                                                                                                                                            Preparing search index...

                                                                                                                                                            Interface TaskStatisticsRequirementsInternal

                                                                                                                                                            Pool worker node worker usage statistics requirements.

                                                                                                                                                            -
                                                                                                                                                            interface TaskStatisticsRequirements {
                                                                                                                                                                elu: MeasurementStatisticsRequirements;
                                                                                                                                                                runTime: MeasurementStatisticsRequirements;
                                                                                                                                                                waitTime: MeasurementStatisticsRequirements;
                                                                                                                                                            }
                                                                                                                                                            Index

                                                                                                                                                            Properties

                                                                                                                                                            elu +TaskStatisticsRequirements | poolifier - v5.2.0
                                                                                                                                                            poolifier - v5.2.0
                                                                                                                                                              Preparing search index...

                                                                                                                                                              Interface TaskStatisticsRequirementsInternal

                                                                                                                                                              Pool worker node worker usage statistics requirements.

                                                                                                                                                              +
                                                                                                                                                              interface TaskStatisticsRequirements {
                                                                                                                                                                  elu: MeasurementStatisticsRequirements;
                                                                                                                                                                  runTime: MeasurementStatisticsRequirements;
                                                                                                                                                                  waitTime: MeasurementStatisticsRequirements;
                                                                                                                                                              }
                                                                                                                                                              Index

                                                                                                                                                              Properties

                                                                                                                                                              Properties

                                                                                                                                                              Tasks event loop utilization requirements.

                                                                                                                                                              -

                                                                                                                                                              Tasks runtime requirements.

                                                                                                                                                              -

                                                                                                                                                              Tasks wait time requirements.

                                                                                                                                                              -
                                                                                                                                                              +

                                                                                                                                                              Tasks runtime requirements.

                                                                                                                                                              +

                                                                                                                                                              Tasks wait time requirements.

                                                                                                                                                              +
                                                                                                                                                              diff --git a/docs/interfaces/src.TasksQueueOptions.html b/docs/interfaces/src.TasksQueueOptions.html index cf467a966..09e2a9ef1 100644 --- a/docs/interfaces/src.TasksQueueOptions.html +++ b/docs/interfaces/src.TasksQueueOptions.html @@ -1,5 +1,5 @@ -TasksQueueOptions | poolifier - v5.1.7
                                                                                                                                                              poolifier - v5.1.7
                                                                                                                                                                Preparing search index...

                                                                                                                                                                Interface TasksQueueOptions

                                                                                                                                                                Worker node tasks queue options.

                                                                                                                                                                -
                                                                                                                                                                interface TasksQueueOptions {
                                                                                                                                                                    concurrency?: number;
                                                                                                                                                                    size?: number;
                                                                                                                                                                    tasksFinishedTimeout?: number;
                                                                                                                                                                    tasksStealingOnBackPressure?: boolean;
                                                                                                                                                                    tasksStealingRatio?: number;
                                                                                                                                                                    taskStealing?: boolean;
                                                                                                                                                                }
                                                                                                                                                                Index

                                                                                                                                                                Properties

                                                                                                                                                                concurrency? +TasksQueueOptions | poolifier - v5.2.0
                                                                                                                                                                poolifier - v5.2.0
                                                                                                                                                                  Preparing search index...

                                                                                                                                                                  Interface TasksQueueOptions

                                                                                                                                                                  Worker node tasks queue options.

                                                                                                                                                                  +
                                                                                                                                                                  interface TasksQueueOptions {
                                                                                                                                                                      concurrency?: number;
                                                                                                                                                                      size?: number;
                                                                                                                                                                      tasksFinishedTimeout?: number;
                                                                                                                                                                      tasksStealingOnBackPressure?: boolean;
                                                                                                                                                                      tasksStealingRatio?: number;
                                                                                                                                                                      taskStealing?: boolean;
                                                                                                                                                                  }
                                                                                                                                                                  Index

                                                                                                                                                                  Properties

                                                                                                                                                                  1
                                                                                                                                                                   
                                                                                                                                                                  -
                                                                                                                                                                  size?: number

                                                                                                                                                                  Maximum tasks queue size per worker node flagging it as back pressured.

                                                                                                                                                                  +
                                                                                                                                                                  size?: number

                                                                                                                                                                  Maximum tasks queue size per worker node flagging it as back pressured.

                                                                                                                                                                  (pool maximum size)^2
                                                                                                                                                                   
                                                                                                                                                                  -
                                                                                                                                                                  tasksFinishedTimeout?: number

                                                                                                                                                                  Queued tasks finished timeout in milliseconds at worker node termination.

                                                                                                                                                                  +
                                                                                                                                                                  tasksFinishedTimeout?: number

                                                                                                                                                                  Queued tasks finished timeout in milliseconds at worker node termination.

                                                                                                                                                                  2000
                                                                                                                                                                   
                                                                                                                                                                  -
                                                                                                                                                                  tasksStealingOnBackPressure?: boolean

                                                                                                                                                                  Whether to enable tasks stealing under back pressure.

                                                                                                                                                                  +
                                                                                                                                                                  tasksStealingOnBackPressure?: boolean

                                                                                                                                                                  Whether to enable tasks stealing under back pressure.

                                                                                                                                                                  true
                                                                                                                                                                   
                                                                                                                                                                  -
                                                                                                                                                                  tasksStealingRatio?: number

                                                                                                                                                                  Ratio of worker nodes that can steal tasks from another worker node.

                                                                                                                                                                  +
                                                                                                                                                                  tasksStealingRatio?: number

                                                                                                                                                                  Ratio of worker nodes that can steal tasks from another worker node.

                                                                                                                                                                  0.6
                                                                                                                                                                   
                                                                                                                                                                  -
                                                                                                                                                                  taskStealing?: boolean

                                                                                                                                                                  Whether to enable task stealing on idle.

                                                                                                                                                                  +
                                                                                                                                                                  taskStealing?: boolean

                                                                                                                                                                  Whether to enable task stealing on idle.

                                                                                                                                                                  true
                                                                                                                                                                   
                                                                                                                                                                  -
                                                                                                                                                                  +
                                                                                                                                                                  diff --git a/docs/interfaces/src.WorkerChoiceStrategiesContext.html b/docs/interfaces/src.WorkerChoiceStrategiesContext.html index 9d7222b64..2b7b29b12 100644 --- a/docs/interfaces/src.WorkerChoiceStrategiesContext.html +++ b/docs/interfaces/src.WorkerChoiceStrategiesContext.html @@ -1,8 +1,8 @@ -WorkerChoiceStrategiesContext | poolifier - v5.1.7
                                                                                                                                                                  poolifier - v5.1.7
                                                                                                                                                                    Preparing search index...

                                                                                                                                                                    Interface WorkerChoiceStrategiesContext<Worker, Data, Response>Internal

                                                                                                                                                                    The worker choice strategies context.

                                                                                                                                                                    -
                                                                                                                                                                    interface WorkerChoiceStrategiesContext<
                                                                                                                                                                        Worker extends IWorker,
                                                                                                                                                                        Data = unknown,
                                                                                                                                                                        Response = unknown,
                                                                                                                                                                    > {
                                                                                                                                                                        execute(
                                                                                                                                                                            workerChoiceStrategy?:
                                                                                                                                                                                | "FAIR_SHARE"
                                                                                                                                                                                | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                                                | "LEAST_BUSY"
                                                                                                                                                                                | "LEAST_ELU"
                                                                                                                                                                                | "LEAST_USED"
                                                                                                                                                                                | "ROUND_ROBIN"
                                                                                                                                                                                | "WEIGHTED_ROUND_ROBIN",
                                                                                                                                                                        ): number;
                                                                                                                                                                        getPolicy(): StrategyPolicy;
                                                                                                                                                                        getStrategyRetries(): number;
                                                                                                                                                                        getTaskStatisticsRequirements(): TaskStatisticsRequirements;
                                                                                                                                                                        remove(workerNodeKey: number): boolean;
                                                                                                                                                                        setDefaultWorkerChoiceStrategy(
                                                                                                                                                                            workerChoiceStrategy:
                                                                                                                                                                                | "FAIR_SHARE"
                                                                                                                                                                                | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                                                | "LEAST_BUSY"
                                                                                                                                                                                | "LEAST_ELU"
                                                                                                                                                                                | "LEAST_USED"
                                                                                                                                                                                | "ROUND_ROBIN"
                                                                                                                                                                                | "WEIGHTED_ROUND_ROBIN",
                                                                                                                                                                            opts?: WorkerChoiceStrategyOptions,
                                                                                                                                                                        ): void;
                                                                                                                                                                        setOptions(opts: WorkerChoiceStrategyOptions | undefined): void;
                                                                                                                                                                        syncWorkerChoiceStrategies(
                                                                                                                                                                            workerChoiceStrategies: Set<
                                                                                                                                                                                | "FAIR_SHARE"
                                                                                                                                                                                | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                                                | "LEAST_BUSY"
                                                                                                                                                                                | "LEAST_ELU"
                                                                                                                                                                                | "LEAST_USED"
                                                                                                                                                                                | "ROUND_ROBIN"
                                                                                                                                                                                | "WEIGHTED_ROUND_ROBIN",
                                                                                                                                                                            >,
                                                                                                                                                                            opts?: WorkerChoiceStrategyOptions,
                                                                                                                                                                        ): void;
                                                                                                                                                                        update(workerNodeKey: number): boolean;
                                                                                                                                                                    }

                                                                                                                                                                    Type Parameters

                                                                                                                                                                    • Worker extends IWorker

                                                                                                                                                                      Type of worker.

                                                                                                                                                                      +WorkerChoiceStrategiesContext | poolifier - v5.2.0
                                                                                                                                                                      poolifier - v5.2.0
                                                                                                                                                                        Preparing search index...

                                                                                                                                                                        Interface WorkerChoiceStrategiesContext<Worker, Data, Response>Internal

                                                                                                                                                                        The worker choice strategies context.

                                                                                                                                                                        +
                                                                                                                                                                        interface WorkerChoiceStrategiesContext<
                                                                                                                                                                            Worker extends IWorker,
                                                                                                                                                                            Data = unknown,
                                                                                                                                                                            Response = unknown,
                                                                                                                                                                        > {
                                                                                                                                                                            execute(
                                                                                                                                                                                workerChoiceStrategy?:
                                                                                                                                                                                    | "FAIR_SHARE"
                                                                                                                                                                                    | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                                                    | "LEAST_BUSY"
                                                                                                                                                                                    | "LEAST_ELU"
                                                                                                                                                                                    | "LEAST_USED"
                                                                                                                                                                                    | "ROUND_ROBIN"
                                                                                                                                                                                    | "WEIGHTED_ROUND_ROBIN",
                                                                                                                                                                                workerNodeKeysSet?: ReadonlySet<number>,
                                                                                                                                                                            ): number;
                                                                                                                                                                            getPolicy(): StrategyPolicy;
                                                                                                                                                                            getStrategyRetries(): number;
                                                                                                                                                                            getTaskStatisticsRequirements(): TaskStatisticsRequirements;
                                                                                                                                                                            remove(workerNodeKey: number): boolean;
                                                                                                                                                                            setDefaultWorkerChoiceStrategy(
                                                                                                                                                                                workerChoiceStrategy:
                                                                                                                                                                                    | "FAIR_SHARE"
                                                                                                                                                                                    | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                                                    | "LEAST_BUSY"
                                                                                                                                                                                    | "LEAST_ELU"
                                                                                                                                                                                    | "LEAST_USED"
                                                                                                                                                                                    | "ROUND_ROBIN"
                                                                                                                                                                                    | "WEIGHTED_ROUND_ROBIN",
                                                                                                                                                                                opts?: WorkerChoiceStrategyOptions,
                                                                                                                                                                            ): void;
                                                                                                                                                                            setOptions(opts: WorkerChoiceStrategyOptions | undefined): void;
                                                                                                                                                                            syncWorkerChoiceStrategies(
                                                                                                                                                                                workerChoiceStrategies: Set<
                                                                                                                                                                                    | "FAIR_SHARE"
                                                                                                                                                                                    | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                                                    | "LEAST_BUSY"
                                                                                                                                                                                    | "LEAST_ELU"
                                                                                                                                                                                    | "LEAST_USED"
                                                                                                                                                                                    | "ROUND_ROBIN"
                                                                                                                                                                                    | "WEIGHTED_ROUND_ROBIN",
                                                                                                                                                                                >,
                                                                                                                                                                                opts?: WorkerChoiceStrategyOptions,
                                                                                                                                                                            ): void;
                                                                                                                                                                            update(workerNodeKey: number): boolean;
                                                                                                                                                                        }

                                                                                                                                                                        Type Parameters

                                                                                                                                                                        • Worker extends IWorker

                                                                                                                                                                          Type of worker.

                                                                                                                                                                        • 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 structured-cloneable data.

                                                                                                                                                                          -
                                                                                                                                                                        Index

                                                                                                                                                                        Methods

                                                                                                                                                                      Index

                                                                                                                                                                      Methods

                                                                                                                                                                      • Executes the given worker choice strategy in the context algorithm.

                                                                                                                                                                        -

                                                                                                                                                                        Parameters

                                                                                                                                                                        • workerChoiceStrategy:
                                                                                                                                                                              | "FAIR_SHARE"
                                                                                                                                                                              | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                                              | "LEAST_BUSY"
                                                                                                                                                                              | "LEAST_ELU"
                                                                                                                                                                              | "LEAST_USED"
                                                                                                                                                                              | "ROUND_ROBIN"
                                                                                                                                                                              | "WEIGHTED_ROUND_ROBIN" = ...

                                                                                                                                                                          The worker choice strategy algorithm to execute.

                                                                                                                                                                          +

                                                                                                                                                                      Methods

                                                                                                                                                                      • Executes the given worker choice strategy.

                                                                                                                                                                        +

                                                                                                                                                                        Parameters

                                                                                                                                                                        • workerChoiceStrategy:
                                                                                                                                                                              | "FAIR_SHARE"
                                                                                                                                                                              | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                                              | "LEAST_BUSY"
                                                                                                                                                                              | "LEAST_ELU"
                                                                                                                                                                              | "LEAST_USED"
                                                                                                                                                                              | "ROUND_ROBIN"
                                                                                                                                                                              | "WEIGHTED_ROUND_ROBIN" = ...

                                                                                                                                                                          The worker choice strategy.

                                                                                                                                                                          +
                                                                                                                                                                        • OptionalworkerNodeKeysSet: ReadonlySet<number>

                                                                                                                                                                          The worker node keys affinity set. If undefined, all workers are eligible.

                                                                                                                                                                        Returns number

                                                                                                                                                                        The key of the worker node.

                                                                                                                                                                        -
                                                                                                                                                                        this.defaultWorkerChoiceStrategy
                                                                                                                                                                        -
                                                                                                                                                                        - -

                                                                                                                                                                        If after computed retries the worker node key is null or undefined.

                                                                                                                                                                        -
                                                                                                                                                                      • Sets the default worker choice strategy to use in the context.

                                                                                                                                                                        +
                                                                                                                                                                      • Sets the default worker choice strategy to use in the context.

                                                                                                                                                                        Parameters

                                                                                                                                                                        • workerChoiceStrategy:
                                                                                                                                                                              | "FAIR_SHARE"
                                                                                                                                                                              | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                                              | "LEAST_BUSY"
                                                                                                                                                                              | "LEAST_ELU"
                                                                                                                                                                              | "LEAST_USED"
                                                                                                                                                                              | "ROUND_ROBIN"
                                                                                                                                                                              | "WEIGHTED_ROUND_ROBIN"

                                                                                                                                                                          The default worker choice strategy to set.

                                                                                                                                                                        • Optionalopts: WorkerChoiceStrategyOptions

                                                                                                                                                                          The worker choice strategy options.

                                                                                                                                                                          -

                                                                                                                                                                        Returns void

                                                                                                                                                                      Returns void

                                                                                                                                                                      • Synchronizes the active worker choice strategies in the context with the given worker choice strategies.

                                                                                                                                                                        +

                                                                                                                                                                      Returns void

                                                                                                                                                                      • Synchronizes the active worker choice strategies in the context with the given worker choice strategies.

                                                                                                                                                                        Parameters

                                                                                                                                                                        • workerChoiceStrategies: Set<
                                                                                                                                                                              | "FAIR_SHARE"
                                                                                                                                                                              | "INTERLEAVED_WEIGHTED_ROUND_ROBIN"
                                                                                                                                                                              | "LEAST_BUSY"
                                                                                                                                                                              | "LEAST_ELU"
                                                                                                                                                                              | "LEAST_USED"
                                                                                                                                                                              | "ROUND_ROBIN"
                                                                                                                                                                              | "WEIGHTED_ROUND_ROBIN",
                                                                                                                                                                          >

                                                                                                                                                                          The worker choice strategies to synchronize.

                                                                                                                                                                        • Optionalopts: WorkerChoiceStrategyOptions

                                                                                                                                                                          The worker choice strategy options.

                                                                                                                                                                          -

                                                                                                                                                                        Returns void

                                                                                                                                                                      • Updates the worker node key in the active worker choice strategies in the context internals.

                                                                                                                                                                        +

                                                                                                                                                                      Returns void

                                                                                                                                                                      +
                                                                                                                                                                      diff --git a/docs/interfaces/src.WorkerChoiceStrategyOptions.html b/docs/interfaces/src.WorkerChoiceStrategyOptions.html index e4e35ec62..33d61f16b 100644 --- a/docs/interfaces/src.WorkerChoiceStrategyOptions.html +++ b/docs/interfaces/src.WorkerChoiceStrategyOptions.html @@ -1,5 +1,5 @@ -WorkerChoiceStrategyOptions | poolifier - v5.1.7
                                                                                                                                                                      poolifier - v5.1.7
                                                                                                                                                                        Preparing search index...

                                                                                                                                                                        Interface WorkerChoiceStrategyOptions

                                                                                                                                                                        Worker choice strategy options.

                                                                                                                                                                        -
                                                                                                                                                                        interface WorkerChoiceStrategyOptions {
                                                                                                                                                                            elu?: MeasurementOptions;
                                                                                                                                                                            measurement?: "elu" | "runTime" | "waitTime";
                                                                                                                                                                            runTime?: MeasurementOptions;
                                                                                                                                                                            waitTime?: MeasurementOptions;
                                                                                                                                                                            weights?: Record<number, number>;
                                                                                                                                                                        }
                                                                                                                                                                        Index

                                                                                                                                                                        Properties

                                                                                                                                                                        elu? +WorkerChoiceStrategyOptions | poolifier - v5.2.0
                                                                                                                                                                        poolifier - v5.2.0
                                                                                                                                                                          Preparing search index...

                                                                                                                                                                          Interface WorkerChoiceStrategyOptions

                                                                                                                                                                          Worker choice strategy options.

                                                                                                                                                                          +
                                                                                                                                                                          interface WorkerChoiceStrategyOptions {
                                                                                                                                                                              elu?: MeasurementOptions;
                                                                                                                                                                              measurement?: "elu" | "runTime" | "waitTime";
                                                                                                                                                                              runTime?: MeasurementOptions;
                                                                                                                                                                              waitTime?: MeasurementOptions;
                                                                                                                                                                              weights?: Record<number, number>;
                                                                                                                                                                          }
                                                                                                                                                                          Index

                                                                                                                                                                          Properties

                                                                                                                                                                          elu? measurement? runTime? waitTime? @@ -8,18 +8,18 @@
                                                                                                                                                                          { median: false }
                                                                                                                                                                           
                                                                                                                                                                          -
                                                                                                                                                                          measurement?: "elu" | "runTime" | "waitTime"

                                                                                                                                                                          Measurement to use in worker choice strategy supporting it.

                                                                                                                                                                          -

                                                                                                                                                                          Runtime options.

                                                                                                                                                                          +
                                                                                                                                                                          measurement?: "elu" | "runTime" | "waitTime"

                                                                                                                                                                          Measurement to use in worker choice strategy supporting it.

                                                                                                                                                                          +

                                                                                                                                                                          Runtime options.

                                                                                                                                                                          { median: false }
                                                                                                                                                                           
                                                                                                                                                                          -

                                                                                                                                                                          Wait time options.

                                                                                                                                                                          +

                                                                                                                                                                          Wait time options.

                                                                                                                                                                          { median: false }
                                                                                                                                                                           
                                                                                                                                                                          -
                                                                                                                                                                          weights?: Record<number, number>

                                                                                                                                                                          Worker weights to use for weighted round robin worker selection strategies. +

                                                                                                                                                                          weights?: Record<number, number>

                                                                                                                                                                          Worker weights to use for weighted round robin worker selection strategies. A weight is tasks maximum execution time in milliseconds for a worker node.

                                                                                                                                                                          Weights computed automatically given the CPU performance.
                                                                                                                                                                           
                                                                                                                                                                          -
                                                                                                                                                                          +
                                                                                                                                                                          diff --git a/docs/interfaces/src.WorkerError.html b/docs/interfaces/src.WorkerError.html index 823a26d3e..bffb34fa8 100644 --- a/docs/interfaces/src.WorkerError.html +++ b/docs/interfaces/src.WorkerError.html @@ -1,15 +1,15 @@ -WorkerError | poolifier - v5.1.7
                                                                                                                                                                          poolifier - v5.1.7
                                                                                                                                                                            Preparing search index...

                                                                                                                                                                            Interface WorkerError<Data>

                                                                                                                                                                            Worker error.

                                                                                                                                                                            +WorkerError | poolifier - v5.2.0
                                                                                                                                                                            poolifier - v5.2.0
                                                                                                                                                                              Preparing search index...

                                                                                                                                                                              Interface WorkerError<Data>

                                                                                                                                                                              Worker error.

                                                                                                                                                                              interface WorkerError<Data = unknown> {
                                                                                                                                                                                  aborted: boolean;
                                                                                                                                                                                  data?: Data;
                                                                                                                                                                                  error?: Error;
                                                                                                                                                                                  message: string;
                                                                                                                                                                                  name?: string;
                                                                                                                                                                                  stack?: string;
                                                                                                                                                                              }

                                                                                                                                                                              Type Parameters

                                                                                                                                                                              • Data = unknown

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

                                                                                                                                                                                -
                                                                                                                                                                              Index

                                                                                                                                                                              Properties

                                                                                                                                                                              Index

                                                                                                                                                                              Properties

                                                                                                                                                                              aborted: boolean

                                                                                                                                                                              Whether the error is an abort error or not.

                                                                                                                                                                              -
                                                                                                                                                                              data?: Data

                                                                                                                                                                              Data triggering the error.

                                                                                                                                                                              -
                                                                                                                                                                              error?: Error

                                                                                                                                                                              Error object.

                                                                                                                                                                              -
                                                                                                                                                                              message: string

                                                                                                                                                                              Error message.

                                                                                                                                                                              -
                                                                                                                                                                              name?: string

                                                                                                                                                                              Task function name triggering the error.

                                                                                                                                                                              -
                                                                                                                                                                              stack?: string

                                                                                                                                                                              Error stack trace.

                                                                                                                                                                              -
                                                                                                                                                                              +
                                                                                                                                                                              data?: Data

                                                                                                                                                                              Data triggering the error.

                                                                                                                                                                              +
                                                                                                                                                                              error?: Error

                                                                                                                                                                              Error object.

                                                                                                                                                                              +
                                                                                                                                                                              message: string

                                                                                                                                                                              Error message.

                                                                                                                                                                              +
                                                                                                                                                                              name?: string

                                                                                                                                                                              Task function name triggering the error.

                                                                                                                                                                              +
                                                                                                                                                                              stack?: string

                                                                                                                                                                              Error stack trace.

                                                                                                                                                                              +
                                                                                                                                                                              diff --git a/docs/interfaces/src.WorkerInfo.html b/docs/interfaces/src.WorkerInfo.html index 56233ece3..af4656b76 100644 --- a/docs/interfaces/src.WorkerInfo.html +++ b/docs/interfaces/src.WorkerInfo.html @@ -1,5 +1,5 @@ -WorkerInfo | poolifier - v5.1.7
                                                                                                                                                                              poolifier - v5.1.7
                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                Interface WorkerInfoInternal

                                                                                                                                                                                Worker information.

                                                                                                                                                                                -
                                                                                                                                                                                interface WorkerInfo {
                                                                                                                                                                                    backPressure: boolean;
                                                                                                                                                                                    backPressureStealing: boolean;
                                                                                                                                                                                    continuousStealing: boolean;
                                                                                                                                                                                    dynamic: boolean;
                                                                                                                                                                                    id: number | undefined;
                                                                                                                                                                                    queuedTaskAbortion: boolean;
                                                                                                                                                                                    ready: boolean;
                                                                                                                                                                                    stealing: boolean;
                                                                                                                                                                                    stolen: boolean;
                                                                                                                                                                                    taskFunctionsProperties?: TaskFunctionProperties[];
                                                                                                                                                                                    type: "cluster" | "thread";
                                                                                                                                                                                }
                                                                                                                                                                                Index

                                                                                                                                                                                Properties

                                                                                                                                                                                backPressure +WorkerInfo | poolifier - v5.2.0
                                                                                                                                                                                poolifier - v5.2.0
                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                  Interface WorkerInfoInternal

                                                                                                                                                                                  Worker information.

                                                                                                                                                                                  +
                                                                                                                                                                                  interface WorkerInfo {
                                                                                                                                                                                      backPressure: boolean;
                                                                                                                                                                                      backPressureStealing: boolean;
                                                                                                                                                                                      continuousStealing: boolean;
                                                                                                                                                                                      dynamic: boolean;
                                                                                                                                                                                      id: number | undefined;
                                                                                                                                                                                      queuedTaskAbortion: boolean;
                                                                                                                                                                                      ready: boolean;
                                                                                                                                                                                      stealing: boolean;
                                                                                                                                                                                      stolen: boolean;
                                                                                                                                                                                      taskFunctionsProperties?: TaskFunctionProperties[];
                                                                                                                                                                                      type: "cluster" | "thread";
                                                                                                                                                                                  }
                                                                                                                                                                                  Index

                                                                                                                                                                                  Properties

                                                                                                                                                                                  backPressure: boolean

                                                                                                                                                                                  Back pressure flag. This flag is set to true when worker node tasks queue is back pressured.

                                                                                                                                                                                  -
                                                                                                                                                                                  backPressureStealing: boolean

                                                                                                                                                                                  Back pressure stealing flag. +

                                                                                                                                                                                  backPressureStealing: boolean

                                                                                                                                                                                  Back pressure stealing flag. This flag is set to true when worker node is stealing one task from another back pressured worker node.

                                                                                                                                                                                  -
                                                                                                                                                                                  continuousStealing: boolean

                                                                                                                                                                                  Continuous stealing flag. +

                                                                                                                                                                                  continuousStealing: boolean

                                                                                                                                                                                  Continuous stealing flag. This flag is set to true when worker node is continuously stealing tasks from other worker nodes.

                                                                                                                                                                                  -
                                                                                                                                                                                  dynamic: boolean

                                                                                                                                                                                  Dynamic flag.

                                                                                                                                                                                  -
                                                                                                                                                                                  id: number | undefined

                                                                                                                                                                                  Worker id.

                                                                                                                                                                                  -
                                                                                                                                                                                  queuedTaskAbortion: boolean

                                                                                                                                                                                  Queued task abortion flag. +

                                                                                                                                                                                  dynamic: boolean

                                                                                                                                                                                  Dynamic flag.

                                                                                                                                                                                  +
                                                                                                                                                                                  id: number | undefined

                                                                                                                                                                                  Worker id.

                                                                                                                                                                                  +
                                                                                                                                                                                  queuedTaskAbortion: boolean

                                                                                                                                                                                  Queued task abortion flag. This flag is set to true when worker node is aborting a queued task.

                                                                                                                                                                                  -
                                                                                                                                                                                  ready: boolean

                                                                                                                                                                                  Ready flag.

                                                                                                                                                                                  -
                                                                                                                                                                                  stealing: boolean

                                                                                                                                                                                  Stealing flag. +

                                                                                                                                                                                  ready: boolean

                                                                                                                                                                                  Ready flag.

                                                                                                                                                                                  +
                                                                                                                                                                                  stealing: boolean

                                                                                                                                                                                  Stealing flag. This flag is set to true when worker node is stealing one task from another worker node.

                                                                                                                                                                                  -
                                                                                                                                                                                  stolen: boolean

                                                                                                                                                                                  Stolen flag. +

                                                                                                                                                                                  stolen: boolean

                                                                                                                                                                                  Stolen flag. This flag is set to true when worker node has one task stolen from another worker node.

                                                                                                                                                                                  -
                                                                                                                                                                                  taskFunctionsProperties?: TaskFunctionProperties[]

                                                                                                                                                                                  Task functions properties.

                                                                                                                                                                                  -
                                                                                                                                                                                  type: "cluster" | "thread"

                                                                                                                                                                                  Worker type.

                                                                                                                                                                                  -
                                                                                                                                                                                  +
                                                                                                                                                                                  taskFunctionsProperties?: TaskFunctionProperties[]

                                                                                                                                                                                  Task functions properties.

                                                                                                                                                                                  +
                                                                                                                                                                                  type: "cluster" | "thread"

                                                                                                                                                                                  Worker type.

                                                                                                                                                                                  +
                                                                                                                                                                                  diff --git a/docs/interfaces/src.WorkerNodeEventDetail.html b/docs/interfaces/src.WorkerNodeEventDetail.html index c12ea3954..a3b24f83a 100644 --- a/docs/interfaces/src.WorkerNodeEventDetail.html +++ b/docs/interfaces/src.WorkerNodeEventDetail.html @@ -1,5 +1,5 @@ -WorkerNodeEventDetail | poolifier - v5.1.7
                                                                                                                                                                                  poolifier - v5.1.7
                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                    Interface WorkerNodeEventDetailInternal

                                                                                                                                                                                    Worker node event detail.

                                                                                                                                                                                    -
                                                                                                                                                                                    interface WorkerNodeEventDetail {
                                                                                                                                                                                        taskId?: `${string}-${string}-${string}-${string}-${string}`;
                                                                                                                                                                                        workerId?: number;
                                                                                                                                                                                        workerNodeKey?: number;
                                                                                                                                                                                    }
                                                                                                                                                                                    Index

                                                                                                                                                                                    Properties

                                                                                                                                                                                    taskId? +WorkerNodeEventDetail | poolifier - v5.2.0
                                                                                                                                                                                    poolifier - v5.2.0
                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                      Interface WorkerNodeEventDetailInternal

                                                                                                                                                                                      Worker node event detail.

                                                                                                                                                                                      +
                                                                                                                                                                                      interface WorkerNodeEventDetail {
                                                                                                                                                                                          taskId?: `${string}-${string}-${string}-${string}-${string}`;
                                                                                                                                                                                          workerId?: number;
                                                                                                                                                                                          workerNodeKey?: number;
                                                                                                                                                                                      }
                                                                                                                                                                                      Index

                                                                                                                                                                                      Properties

                                                                                                                                                                                      taskId?: `${string}-${string}-${string}-${string}-${string}`
                                                                                                                                                                                      workerId?: number
                                                                                                                                                                                      workerNodeKey?: number
                                                                                                                                                                                      +

                                                                                                                                                                                      Properties

                                                                                                                                                                                      taskId?: `${string}-${string}-${string}-${string}-${string}`
                                                                                                                                                                                      workerId?: number
                                                                                                                                                                                      workerNodeKey?: number
                                                                                                                                                                                      diff --git a/docs/interfaces/src.WorkerNodeOptions.html b/docs/interfaces/src.WorkerNodeOptions.html index 7a6ff51cd..0d7e65489 100644 --- a/docs/interfaces/src.WorkerNodeOptions.html +++ b/docs/interfaces/src.WorkerNodeOptions.html @@ -1,7 +1,7 @@ -WorkerNodeOptions | poolifier - v5.1.7
                                                                                                                                                                                      poolifier - v5.1.7
                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                        Interface WorkerNodeOptionsInternal

                                                                                                                                                                                        Worker node options.

                                                                                                                                                                                        -
                                                                                                                                                                                        interface WorkerNodeOptions {
                                                                                                                                                                                            env?: Record<string, unknown>;
                                                                                                                                                                                            tasksQueueBackPressureSize: number | undefined;
                                                                                                                                                                                            tasksQueueBucketSize: number | undefined;
                                                                                                                                                                                            tasksQueuePriority: boolean | undefined;
                                                                                                                                                                                            workerOptions?: WorkerOptions;
                                                                                                                                                                                        }
                                                                                                                                                                                        Index

                                                                                                                                                                                        Properties

                                                                                                                                                                                        env? +WorkerNodeOptions | poolifier - v5.2.0
                                                                                                                                                                                        poolifier - v5.2.0
                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                          Interface WorkerNodeOptionsInternal

                                                                                                                                                                                          Worker node options.

                                                                                                                                                                                          +
                                                                                                                                                                                          interface WorkerNodeOptions {
                                                                                                                                                                                              env?: Record<string, unknown>;
                                                                                                                                                                                              tasksQueueBackPressureSize: number | undefined;
                                                                                                                                                                                              tasksQueueBucketSize: number | undefined;
                                                                                                                                                                                              tasksQueuePriority: boolean | undefined;
                                                                                                                                                                                              workerOptions?: WorkerOptions;
                                                                                                                                                                                          }
                                                                                                                                                                                          Index

                                                                                                                                                                                          Properties

                                                                                                                                                                                          env?: Record<string, unknown>
                                                                                                                                                                                          tasksQueueBackPressureSize: number | undefined
                                                                                                                                                                                          tasksQueueBucketSize: number | undefined
                                                                                                                                                                                          tasksQueuePriority: boolean | undefined
                                                                                                                                                                                          workerOptions?: WorkerOptions
                                                                                                                                                                                          +

                                                                                                                                                                                          Properties

                                                                                                                                                                                          env?: Record<string, unknown>
                                                                                                                                                                                          tasksQueueBackPressureSize: number | undefined
                                                                                                                                                                                          tasksQueueBucketSize: number | undefined
                                                                                                                                                                                          tasksQueuePriority: boolean | undefined
                                                                                                                                                                                          workerOptions?: WorkerOptions
                                                                                                                                                                                          diff --git a/docs/interfaces/src.WorkerOptions.html b/docs/interfaces/src.WorkerOptions.html index eace48f46..01551248d 100644 --- a/docs/interfaces/src.WorkerOptions.html +++ b/docs/interfaces/src.WorkerOptions.html @@ -1,5 +1,5 @@ -WorkerOptions | poolifier - v5.1.7
                                                                                                                                                                                          poolifier - v5.1.7
                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                            Interface WorkerOptions

                                                                                                                                                                                            Options for workers.

                                                                                                                                                                                            -
                                                                                                                                                                                            interface WorkerOptions {
                                                                                                                                                                                                killBehavior?: "HARD" | "SOFT";
                                                                                                                                                                                                killHandler?: KillHandler;
                                                                                                                                                                                                maxInactiveTime?: number;
                                                                                                                                                                                            }
                                                                                                                                                                                            Index

                                                                                                                                                                                            Properties

                                                                                                                                                                                            killBehavior? +WorkerOptions | poolifier - v5.2.0
                                                                                                                                                                                            poolifier - v5.2.0
                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                              Interface WorkerOptions

                                                                                                                                                                                              Options for workers.

                                                                                                                                                                                              +
                                                                                                                                                                                              interface WorkerOptions {
                                                                                                                                                                                                  killBehavior?: "HARD" | "SOFT";
                                                                                                                                                                                                  killHandler?: KillHandler;
                                                                                                                                                                                                  maxInactiveTime?: number;
                                                                                                                                                                                              }
                                                                                                                                                                                              Index

                                                                                                                                                                                              Properties

                                                                                                                                                                                              killBehavior?: "HARD" | "SOFT"

                                                                                                                                                                                              killBehavior dictates if your worker will be deleted in case a task is active on it.

                                                                                                                                                                                              @@ -11,9 +11,9 @@
                                                                                                                                                                                              KillBehaviors.SOFT
                                                                                                                                                                                               
                                                                                                                                                                                              -
                                                                                                                                                                                              killHandler?: KillHandler

                                                                                                                                                                                              The function to call when a worker is killed.

                                                                                                                                                                                              +
                                                                                                                                                                                              killHandler?: KillHandler

                                                                                                                                                                                              The function to call when a worker is killed.

                                                                                                                                                                                              () => {}

                                                                                                                                                                                              -
                                                                                                                                                                                              maxInactiveTime?: number

                                                                                                                                                                                              Maximum waiting time in milliseconds for tasks on newly created workers. It must be greater or equal than 5.

                                                                                                                                                                                              +
                                                                                                                                                                                              maxInactiveTime?: number

                                                                                                                                                                                              Maximum waiting time in milliseconds for tasks on newly created workers. It must be greater or equal than 5.

                                                                                                                                                                                              After this time, newly created workers will be terminated. The last active time of your worker will be updated when it terminates a task.

                                                                                                                                                                                                @@ -24,4 +24,4 @@ when this timeout expires your tasks is interrupted before completion and remove
                                                                                                                                                                                              60000
                                                                                                                                                                                               
                                                                                                                                                                                              -
                                                                                                                                                                                              +
                                                                                                                                                                                              diff --git a/docs/interfaces/src.WorkerStatistics.html b/docs/interfaces/src.WorkerStatistics.html index ca19695c0..85c90f0c5 100644 --- a/docs/interfaces/src.WorkerStatistics.html +++ b/docs/interfaces/src.WorkerStatistics.html @@ -1,6 +1,6 @@ -WorkerStatistics | poolifier - v5.1.7
                                                                                                                                                                                              poolifier - v5.1.7
                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                Interface WorkerStatisticsInternal

                                                                                                                                                                                                Worker task performance statistics computation settings.

                                                                                                                                                                                                -
                                                                                                                                                                                                interface WorkerStatistics {
                                                                                                                                                                                                    elu: boolean;
                                                                                                                                                                                                    runTime: boolean;
                                                                                                                                                                                                }
                                                                                                                                                                                                Index

                                                                                                                                                                                                Properties

                                                                                                                                                                                                elu +WorkerStatistics | poolifier - v5.2.0
                                                                                                                                                                                                poolifier - v5.2.0
                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                  Interface WorkerStatisticsInternal

                                                                                                                                                                                                  Worker task performance statistics computation settings.

                                                                                                                                                                                                  +
                                                                                                                                                                                                  interface WorkerStatistics {
                                                                                                                                                                                                      elu: boolean;
                                                                                                                                                                                                      runTime: boolean;
                                                                                                                                                                                                  }
                                                                                                                                                                                                  Index

                                                                                                                                                                                                  Properties

                                                                                                                                                                                                  Properties

                                                                                                                                                                                                  elu: boolean

                                                                                                                                                                                                  Whether the worker computes the task event loop utilization (ELU) or not.

                                                                                                                                                                                                  -
                                                                                                                                                                                                  runTime: boolean

                                                                                                                                                                                                  Whether the worker computes the task runtime or not.

                                                                                                                                                                                                  -
                                                                                                                                                                                                  +
                                                                                                                                                                                                  runTime: boolean

                                                                                                                                                                                                  Whether the worker computes the task runtime or not.

                                                                                                                                                                                                  +
                                                                                                                                                                                                  diff --git a/docs/interfaces/src.WorkerUsage.html b/docs/interfaces/src.WorkerUsage.html index f4e96cd79..5d9aa38cc 100644 --- a/docs/interfaces/src.WorkerUsage.html +++ b/docs/interfaces/src.WorkerUsage.html @@ -1,10 +1,10 @@ -WorkerUsage | poolifier - v5.1.7
                                                                                                                                                                                                  poolifier - v5.1.7
                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                    Interface WorkerUsageInternal

                                                                                                                                                                                                    Worker usage statistics.

                                                                                                                                                                                                    -
                                                                                                                                                                                                    interface WorkerUsage {
                                                                                                                                                                                                        elu: EventLoopUtilizationMeasurementStatistics;
                                                                                                                                                                                                        runTime: MeasurementStatistics;
                                                                                                                                                                                                        tasks: TaskStatistics;
                                                                                                                                                                                                        waitTime: MeasurementStatistics;
                                                                                                                                                                                                    }
                                                                                                                                                                                                    Index

                                                                                                                                                                                                    Properties

                                                                                                                                                                                                    elu +WorkerUsage | poolifier - v5.2.0
                                                                                                                                                                                                    poolifier - v5.2.0
                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                      Interface WorkerUsageInternal

                                                                                                                                                                                                      Worker usage statistics.

                                                                                                                                                                                                      +
                                                                                                                                                                                                      interface WorkerUsage {
                                                                                                                                                                                                          elu: EventLoopUtilizationMeasurementStatistics;
                                                                                                                                                                                                          runTime: MeasurementStatistics;
                                                                                                                                                                                                          tasks: TaskStatistics;
                                                                                                                                                                                                          waitTime: MeasurementStatistics;
                                                                                                                                                                                                      }
                                                                                                                                                                                                      Index

                                                                                                                                                                                                      Properties

                                                                                                                                                                                                      Tasks event loop utilization statistics.

                                                                                                                                                                                                      -

                                                                                                                                                                                                      Tasks runtime statistics.

                                                                                                                                                                                                      -

                                                                                                                                                                                                      Tasks statistics.

                                                                                                                                                                                                      -

                                                                                                                                                                                                      Tasks wait time statistics.

                                                                                                                                                                                                      -
                                                                                                                                                                                                      +

                                                                                                                                                                                                      Tasks runtime statistics.

                                                                                                                                                                                                      +

                                                                                                                                                                                                      Tasks statistics.

                                                                                                                                                                                                      +

                                                                                                                                                                                                      Tasks wait time statistics.

                                                                                                                                                                                                      +
                                                                                                                                                                                                      diff --git a/docs/modules/src.html b/docs/modules/src.html index 77ca70eda..04498660c 100644 --- a/docs/modules/src.html +++ b/docs/modules/src.html @@ -1 +1 @@ -src | poolifier - v5.1.7
                                                                                                                                                                                                      poolifier - v5.1.7
                                                                                                                                                                                                        Preparing search index...
                                                                                                                                                                                                        +src | poolifier - v5.2.0
                                                                                                                                                                                                        poolifier - v5.2.0
                                                                                                                                                                                                          Preparing search index...
                                                                                                                                                                                                          diff --git a/docs/types/src.ClusterPoolOptions.html b/docs/types/src.ClusterPoolOptions.html index 398d79a24..916bdc65a 100644 --- a/docs/types/src.ClusterPoolOptions.html +++ b/docs/types/src.ClusterPoolOptions.html @@ -1,2 +1,2 @@ -ClusterPoolOptions | poolifier - v5.1.7
                                                                                                                                                                                                          poolifier - v5.1.7
                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                            Type Alias ClusterPoolOptions

                                                                                                                                                                                                            ClusterPoolOptions: PoolOptions<Worker>

                                                                                                                                                                                                            Options for a poolifier cluster pool.

                                                                                                                                                                                                            -
                                                                                                                                                                                                            +ClusterPoolOptions | poolifier - v5.2.0
                                                                                                                                                                                                            poolifier - v5.2.0
                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                              Type Alias ClusterPoolOptions

                                                                                                                                                                                                              ClusterPoolOptions: PoolOptions<Worker>

                                                                                                                                                                                                              Options for a poolifier cluster pool.

                                                                                                                                                                                                              +
                                                                                                                                                                                                              diff --git a/docs/types/src.ErrorHandler.html b/docs/types/src.ErrorHandler.html index b68891cc7..b25c16ad5 100644 --- a/docs/types/src.ErrorHandler.html +++ b/docs/types/src.ErrorHandler.html @@ -1,3 +1,3 @@ -ErrorHandler | poolifier - v5.1.7
                                                                                                                                                                                                              poolifier - v5.1.7
                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                Type Alias ErrorHandler<Worker>

                                                                                                                                                                                                                ErrorHandler: (this: Worker, error: Error) => void

                                                                                                                                                                                                                Callback invoked if the worker raised an error.

                                                                                                                                                                                                                +ErrorHandler | poolifier - v5.2.0
                                                                                                                                                                                                                poolifier - v5.2.0
                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                  Type Alias ErrorHandler<Worker>

                                                                                                                                                                                                                  ErrorHandler: (this: Worker, error: Error) => void

                                                                                                                                                                                                                  Callback invoked if the worker raised an error.

                                                                                                                                                                                                                  Type Parameters

                                                                                                                                                                                                                  • Worker extends IWorker

                                                                                                                                                                                                                    Type of worker.

                                                                                                                                                                                                                    -

                                                                                                                                                                                                                  Type Declaration

                                                                                                                                                                                                                    • (this: Worker, error: Error): void
                                                                                                                                                                                                                    • Parameters

                                                                                                                                                                                                                      Returns void

                                                                                                                                                                                                                  +

                                                                                                                                                                                                                  Type Declaration

                                                                                                                                                                                                                    • (this: Worker, error: Error): void
                                                                                                                                                                                                                    • Parameters

                                                                                                                                                                                                                      Returns void

                                                                                                                                                                                                                  diff --git a/docs/types/src.EventHandler.html b/docs/types/src.EventHandler.html index c65bef9cf..88e14d110 100644 --- a/docs/types/src.EventHandler.html +++ b/docs/types/src.EventHandler.html @@ -1,3 +1,3 @@ -EventHandler | poolifier - v5.1.7
                                                                                                                                                                                                                  poolifier - v5.1.7
                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                    Type Alias EventHandler<Worker>

                                                                                                                                                                                                                    EventHandler:
                                                                                                                                                                                                                        | ErrorHandler<Worker>
                                                                                                                                                                                                                        | ExitHandler<Worker>
                                                                                                                                                                                                                        | MessageHandler<Worker>
                                                                                                                                                                                                                        | OnlineHandler<Worker>

                                                                                                                                                                                                                    Worker event handler.

                                                                                                                                                                                                                    +EventHandler | poolifier - v5.2.0
                                                                                                                                                                                                                    poolifier - v5.2.0
                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                      Type Alias EventHandler<Worker>

                                                                                                                                                                                                                      EventHandler:
                                                                                                                                                                                                                          | ErrorHandler<Worker>
                                                                                                                                                                                                                          | ExitHandler<Worker>
                                                                                                                                                                                                                          | MessageHandler<Worker>
                                                                                                                                                                                                                          | OnlineHandler<Worker>

                                                                                                                                                                                                                      Worker event handler.

                                                                                                                                                                                                                      Type Parameters

                                                                                                                                                                                                                      • Worker extends IWorker

                                                                                                                                                                                                                        Type of worker.

                                                                                                                                                                                                                        -
                                                                                                                                                                                                                      +
                                                                                                                                                                                                                      diff --git a/docs/types/src.ExitHandler.html b/docs/types/src.ExitHandler.html index ea71dbe0a..0fcce2374 100644 --- a/docs/types/src.ExitHandler.html +++ b/docs/types/src.ExitHandler.html @@ -1,3 +1,3 @@ -ExitHandler | poolifier - v5.1.7
                                                                                                                                                                                                                      poolifier - v5.1.7
                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                        Type Alias ExitHandler<Worker>

                                                                                                                                                                                                                        ExitHandler: (this: Worker, exitCode: number) => void

                                                                                                                                                                                                                        Callback invoked when the worker exits successfully.

                                                                                                                                                                                                                        +ExitHandler | poolifier - v5.2.0
                                                                                                                                                                                                                        poolifier - v5.2.0
                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                          Type Alias ExitHandler<Worker>

                                                                                                                                                                                                                          ExitHandler: (this: Worker, exitCode: number) => void

                                                                                                                                                                                                                          Callback invoked when the worker exits successfully.

                                                                                                                                                                                                                          Type Parameters

                                                                                                                                                                                                                          • Worker extends IWorker

                                                                                                                                                                                                                            Type of worker.

                                                                                                                                                                                                                            -

                                                                                                                                                                                                                          Type Declaration

                                                                                                                                                                                                                            • (this: Worker, exitCode: number): void
                                                                                                                                                                                                                            • Parameters

                                                                                                                                                                                                                              Returns void

                                                                                                                                                                                                                          +

                                                                                                                                                                                                                          Type Declaration

                                                                                                                                                                                                                            • (this: Worker, exitCode: number): void
                                                                                                                                                                                                                            • Parameters

                                                                                                                                                                                                                              Returns void

                                                                                                                                                                                                                          diff --git a/docs/types/src.KillBehavior.html b/docs/types/src.KillBehavior.html index 519faf696..5df44192d 100644 --- a/docs/types/src.KillBehavior.html +++ b/docs/types/src.KillBehavior.html @@ -1,2 +1,2 @@ -KillBehavior | poolifier - v5.1.7
                                                                                                                                                                                                                          poolifier - v5.1.7
                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                            Type Alias KillBehavior

                                                                                                                                                                                                                            KillBehavior: keyof typeof KillBehaviors

                                                                                                                                                                                                                            Kill behavior.

                                                                                                                                                                                                                            -
                                                                                                                                                                                                                            +KillBehavior | poolifier - v5.2.0
                                                                                                                                                                                                                            poolifier - v5.2.0
                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                              Type Alias KillBehavior

                                                                                                                                                                                                                              KillBehavior: keyof typeof KillBehaviors

                                                                                                                                                                                                                              Kill behavior.

                                                                                                                                                                                                                              +
                                                                                                                                                                                                                              diff --git a/docs/types/src.KillHandler.html b/docs/types/src.KillHandler.html index c55130f8c..6525bd9ec 100644 --- a/docs/types/src.KillHandler.html +++ b/docs/types/src.KillHandler.html @@ -1,2 +1,2 @@ -KillHandler | poolifier - v5.1.7
                                                                                                                                                                                                                              poolifier - v5.1.7
                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                Type Alias KillHandler

                                                                                                                                                                                                                                KillHandler: () => Promise<void> | void

                                                                                                                                                                                                                                Handler called when a worker is killed.

                                                                                                                                                                                                                                -

                                                                                                                                                                                                                                Type Declaration

                                                                                                                                                                                                                                  • (): Promise<void> | void
                                                                                                                                                                                                                                  • Returns Promise<void> | void

                                                                                                                                                                                                                                +KillHandler | poolifier - v5.2.0
                                                                                                                                                                                                                                poolifier - v5.2.0
                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                  Type Alias KillHandler

                                                                                                                                                                                                                                  KillHandler: () => Promise<void> | void

                                                                                                                                                                                                                                  Handler called when a worker is killed.

                                                                                                                                                                                                                                  +

                                                                                                                                                                                                                                  Type Declaration

                                                                                                                                                                                                                                    • (): Promise<void> | void
                                                                                                                                                                                                                                    • Returns Promise<void> | void

                                                                                                                                                                                                                                  diff --git a/docs/types/src.Measurement.html b/docs/types/src.Measurement.html index 4d12a4561..4ec1b1096 100644 --- a/docs/types/src.Measurement.html +++ b/docs/types/src.Measurement.html @@ -1,2 +1,2 @@ -Measurement | poolifier - v5.1.7
                                                                                                                                                                                                                                  poolifier - v5.1.7
                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                    Type Alias Measurement

                                                                                                                                                                                                                                    Measurement: keyof typeof Measurements

                                                                                                                                                                                                                                    Measurement.

                                                                                                                                                                                                                                    -
                                                                                                                                                                                                                                    +Measurement | poolifier - v5.2.0
                                                                                                                                                                                                                                    poolifier - v5.2.0
                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                      Type Alias Measurement

                                                                                                                                                                                                                                      Measurement: keyof typeof Measurements

                                                                                                                                                                                                                                      Measurement.

                                                                                                                                                                                                                                      +
                                                                                                                                                                                                                                      diff --git a/docs/types/src.MessageHandler.html b/docs/types/src.MessageHandler.html index 9cc759aa7..52ad217f8 100644 --- a/docs/types/src.MessageHandler.html +++ b/docs/types/src.MessageHandler.html @@ -1,3 +1,3 @@ -MessageHandler | poolifier - v5.1.7
                                                                                                                                                                                                                                      poolifier - v5.1.7
                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                        Type Alias MessageHandler<Worker>

                                                                                                                                                                                                                                        MessageHandler: (this: Worker, message: unknown) => void

                                                                                                                                                                                                                                        Callback invoked if the worker has received a message.

                                                                                                                                                                                                                                        +MessageHandler | poolifier - v5.2.0
                                                                                                                                                                                                                                        poolifier - v5.2.0
                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                          Type Alias MessageHandler<Worker>

                                                                                                                                                                                                                                          MessageHandler: (this: Worker, message: unknown) => void

                                                                                                                                                                                                                                          Callback invoked if the worker has received a message.

                                                                                                                                                                                                                                          Type Parameters

                                                                                                                                                                                                                                          • Worker extends IWorker

                                                                                                                                                                                                                                            Type of worker.

                                                                                                                                                                                                                                            -

                                                                                                                                                                                                                                          Type Declaration

                                                                                                                                                                                                                                            • (this: Worker, message: unknown): void
                                                                                                                                                                                                                                            • Parameters

                                                                                                                                                                                                                                              Returns void

                                                                                                                                                                                                                                          +

                                                                                                                                                                                                                                          Type Declaration

                                                                                                                                                                                                                                            • (this: Worker, message: unknown): void
                                                                                                                                                                                                                                            • Parameters

                                                                                                                                                                                                                                              Returns void

                                                                                                                                                                                                                                          diff --git a/docs/types/src.OnlineHandler.html b/docs/types/src.OnlineHandler.html index e4ec479ea..2731b0c05 100644 --- a/docs/types/src.OnlineHandler.html +++ b/docs/types/src.OnlineHandler.html @@ -1,3 +1,3 @@ -OnlineHandler | poolifier - v5.1.7
                                                                                                                                                                                                                                          poolifier - v5.1.7
                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                            Type Alias OnlineHandler<Worker>

                                                                                                                                                                                                                                            OnlineHandler: (this: Worker) => void

                                                                                                                                                                                                                                            Callback invoked when the worker has started successfully.

                                                                                                                                                                                                                                            +OnlineHandler | poolifier - v5.2.0
                                                                                                                                                                                                                                            poolifier - v5.2.0
                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                              Type Alias OnlineHandler<Worker>

                                                                                                                                                                                                                                              OnlineHandler: (this: Worker) => void

                                                                                                                                                                                                                                              Callback invoked when the worker has started successfully.

                                                                                                                                                                                                                                              Type Parameters

                                                                                                                                                                                                                                              • Worker extends IWorker

                                                                                                                                                                                                                                                Type of worker.

                                                                                                                                                                                                                                                -

                                                                                                                                                                                                                                              Type Declaration

                                                                                                                                                                                                                                              +

                                                                                                                                                                                                                                              Type Declaration

                                                                                                                                                                                                                                              diff --git a/docs/types/src.PoolEvent.html b/docs/types/src.PoolEvent.html index 897557dbe..a8dad23a5 100644 --- a/docs/types/src.PoolEvent.html +++ b/docs/types/src.PoolEvent.html @@ -1,2 +1,2 @@ -PoolEvent | poolifier - v5.1.7
                                                                                                                                                                                                                                              poolifier - v5.1.7
                                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                                Type Alias PoolEvent

                                                                                                                                                                                                                                                PoolEvent: keyof typeof PoolEvents

                                                                                                                                                                                                                                                Pool event.

                                                                                                                                                                                                                                                -
                                                                                                                                                                                                                                                +PoolEvent | poolifier - v5.2.0
                                                                                                                                                                                                                                                poolifier - v5.2.0
                                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                                  Type Alias PoolEvent

                                                                                                                                                                                                                                                  PoolEvent: keyof typeof PoolEvents

                                                                                                                                                                                                                                                  Pool event.

                                                                                                                                                                                                                                                  +
                                                                                                                                                                                                                                                  diff --git a/docs/types/src.PoolType.html b/docs/types/src.PoolType.html index 2e3fd6caf..81d5a3d41 100644 --- a/docs/types/src.PoolType.html +++ b/docs/types/src.PoolType.html @@ -1,2 +1,2 @@ -PoolType | poolifier - v5.1.7
                                                                                                                                                                                                                                                  poolifier - v5.1.7
                                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                                    Type Alias PoolType

                                                                                                                                                                                                                                                    PoolType: keyof typeof PoolTypes

                                                                                                                                                                                                                                                    Pool type.

                                                                                                                                                                                                                                                    -
                                                                                                                                                                                                                                                    +PoolType | poolifier - v5.2.0
                                                                                                                                                                                                                                                    poolifier - v5.2.0
                                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                                      Type Alias PoolType

                                                                                                                                                                                                                                                      PoolType: keyof typeof PoolTypes

                                                                                                                                                                                                                                                      Pool type.

                                                                                                                                                                                                                                                      +
                                                                                                                                                                                                                                                      diff --git a/docs/types/src.TaskAsyncFunction.html b/docs/types/src.TaskAsyncFunction.html index adb9e21b1..8920bf1c0 100644 --- a/docs/types/src.TaskAsyncFunction.html +++ b/docs/types/src.TaskAsyncFunction.html @@ -1,7 +1,7 @@ -TaskAsyncFunction | poolifier - v5.1.7
                                                                                                                                                                                                                                                      poolifier - v5.1.7
                                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                                        Type Alias TaskAsyncFunction<Data, Response>

                                                                                                                                                                                                                                                        TaskAsyncFunction: (data?: Data) => Promise<Response>

                                                                                                                                                                                                                                                        Task asynchronous function that can be executed. +TaskAsyncFunction | poolifier - v5.2.0

                                                                                                                                                                                                                                                        poolifier - v5.2.0
                                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                                          Type Alias TaskAsyncFunction<Data, Response>

                                                                                                                                                                                                                                                          TaskAsyncFunction: (data?: Data) => Promise<Response>

                                                                                                                                                                                                                                                          Task asynchronous function that can be executed. This function must return a promise.

                                                                                                                                                                                                                                                          Type Parameters

                                                                                                                                                                                                                                                          • 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 structured-cloneable data.

                                                                                                                                                                                                                                                          Type Declaration

                                                                                                                                                                                                                                                            • (data?: Data): Promise<Response>
                                                                                                                                                                                                                                                            • Parameters

                                                                                                                                                                                                                                                              • Optionaldata: Data

                                                                                                                                                                                                                                                                Data sent to the worker.

                                                                                                                                                                                                                                                              Returns Promise<Response>

                                                                                                                                                                                                                                                              Execution response promise.

                                                                                                                                                                                                                                                              -
                                                                                                                                                                                                                                                          +
                                                                                                                                                                                                                                                          diff --git a/docs/types/src.TaskFunction.html b/docs/types/src.TaskFunction.html index c7b31aadc..2fd12eee4 100644 --- a/docs/types/src.TaskFunction.html +++ b/docs/types/src.TaskFunction.html @@ -1,5 +1,5 @@ -TaskFunction | poolifier - v5.1.7
                                                                                                                                                                                                                                                          poolifier - v5.1.7
                                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                                            Type Alias TaskFunction<Data, Response>

                                                                                                                                                                                                                                                            TaskFunction:
                                                                                                                                                                                                                                                                | TaskAsyncFunction<Data, Response>
                                                                                                                                                                                                                                                                | TaskSyncFunction<Data, Response>

                                                                                                                                                                                                                                                            Task function that can be executed. +TaskFunction | poolifier - v5.2.0

                                                                                                                                                                                                                                                            poolifier - v5.2.0
                                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                                              Type Alias TaskFunction<Data, Response>

                                                                                                                                                                                                                                                              TaskFunction:
                                                                                                                                                                                                                                                                  | TaskAsyncFunction<Data, Response>
                                                                                                                                                                                                                                                                  | TaskSyncFunction<Data, Response>

                                                                                                                                                                                                                                                              Task function that can be executed. This function can be synchronous or asynchronous.

                                                                                                                                                                                                                                                              Type Parameters

                                                                                                                                                                                                                                                              • 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 structured-cloneable data.

                                                                                                                                                                                                                                                                -
                                                                                                                                                                                                                                                              +
                                                                                                                                                                                                                                                              diff --git a/docs/types/src.TaskFunctions.html b/docs/types/src.TaskFunctions.html index 1d6e62d6e..a07f296a3 100644 --- a/docs/types/src.TaskFunctions.html +++ b/docs/types/src.TaskFunctions.html @@ -1,6 +1,6 @@ -TaskFunctions | poolifier - v5.1.7
                                                                                                                                                                                                                                                              poolifier - v5.1.7
                                                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                                                Type Alias TaskFunctions<Data, Response>

                                                                                                                                                                                                                                                                TaskFunctions: Record<
                                                                                                                                                                                                                                                                    string,
                                                                                                                                                                                                                                                                    TaskFunction<Data, Response>
                                                                                                                                                                                                                                                                    | TaskFunctionObject<Data, Response>,
                                                                                                                                                                                                                                                                >

                                                                                                                                                                                                                                                                Tasks functions that can be executed. +TaskFunctions | poolifier - v5.2.0

                                                                                                                                                                                                                                                                poolifier - v5.2.0
                                                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                                                  Type Alias TaskFunctions<Data, Response>

                                                                                                                                                                                                                                                                  TaskFunctions: Record<
                                                                                                                                                                                                                                                                      string,
                                                                                                                                                                                                                                                                      TaskFunction<Data, Response>
                                                                                                                                                                                                                                                                      | TaskFunctionObject<Data, Response>,
                                                                                                                                                                                                                                                                  >

                                                                                                                                                                                                                                                                  Tasks functions that can be executed. The key is the name of the task function or task function object. The value is the task function or task function object.

                                                                                                                                                                                                                                                                  Type Parameters

                                                                                                                                                                                                                                                                  • 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 structured-cloneable data.

                                                                                                                                                                                                                                                                    -
                                                                                                                                                                                                                                                                  +
                                                                                                                                                                                                                                                                  diff --git a/docs/types/src.TaskSyncFunction.html b/docs/types/src.TaskSyncFunction.html index 80168cd52..fd9526757 100644 --- a/docs/types/src.TaskSyncFunction.html +++ b/docs/types/src.TaskSyncFunction.html @@ -1,6 +1,6 @@ -TaskSyncFunction | poolifier - v5.1.7
                                                                                                                                                                                                                                                                  poolifier - v5.1.7
                                                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                                                    Type Alias TaskSyncFunction<Data, Response>

                                                                                                                                                                                                                                                                    TaskSyncFunction: (data?: Data) => Response

                                                                                                                                                                                                                                                                    Task synchronous function that can be executed.

                                                                                                                                                                                                                                                                    +TaskSyncFunction | poolifier - v5.2.0
                                                                                                                                                                                                                                                                    poolifier - v5.2.0
                                                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                                                      Type Alias TaskSyncFunction<Data, Response>

                                                                                                                                                                                                                                                                      TaskSyncFunction: (data?: Data) => Response

                                                                                                                                                                                                                                                                      Task synchronous function that can be executed.

                                                                                                                                                                                                                                                                      Type Parameters

                                                                                                                                                                                                                                                                      • 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 structured-cloneable data.

                                                                                                                                                                                                                                                                      Type Declaration

                                                                                                                                                                                                                                                                      +
                                                                                                                                                                                                                                                                      diff --git a/docs/types/src.ThreadPoolOptions.html b/docs/types/src.ThreadPoolOptions.html index 63e27f771..185737c72 100644 --- a/docs/types/src.ThreadPoolOptions.html +++ b/docs/types/src.ThreadPoolOptions.html @@ -1,2 +1,2 @@ -ThreadPoolOptions | poolifier - v5.1.7
                                                                                                                                                                                                                                                                      poolifier - v5.1.7
                                                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                                                        Type Alias ThreadPoolOptions

                                                                                                                                                                                                                                                                        ThreadPoolOptions: PoolOptions<Worker>

                                                                                                                                                                                                                                                                        Options for a poolifier thread pool.

                                                                                                                                                                                                                                                                        -
                                                                                                                                                                                                                                                                        +ThreadPoolOptions | poolifier - v5.2.0
                                                                                                                                                                                                                                                                        poolifier - v5.2.0
                                                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                                                          Type Alias ThreadPoolOptions

                                                                                                                                                                                                                                                                          ThreadPoolOptions: PoolOptions<Worker>

                                                                                                                                                                                                                                                                          Options for a poolifier thread pool.

                                                                                                                                                                                                                                                                          +
                                                                                                                                                                                                                                                                          diff --git a/docs/types/src.WorkerChoiceStrategy.html b/docs/types/src.WorkerChoiceStrategy.html index ac5123b79..e508a8e18 100644 --- a/docs/types/src.WorkerChoiceStrategy.html +++ b/docs/types/src.WorkerChoiceStrategy.html @@ -1,2 +1,2 @@ -WorkerChoiceStrategy | poolifier - v5.1.7
                                                                                                                                                                                                                                                                          poolifier - v5.1.7
                                                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                                                            Type Alias WorkerChoiceStrategy

                                                                                                                                                                                                                                                                            WorkerChoiceStrategy: keyof typeof WorkerChoiceStrategies

                                                                                                                                                                                                                                                                            Worker choice strategy.

                                                                                                                                                                                                                                                                            -
                                                                                                                                                                                                                                                                            +WorkerChoiceStrategy | poolifier - v5.2.0
                                                                                                                                                                                                                                                                            poolifier - v5.2.0
                                                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                                                              Type Alias WorkerChoiceStrategy

                                                                                                                                                                                                                                                                              WorkerChoiceStrategy: keyof typeof WorkerChoiceStrategies

                                                                                                                                                                                                                                                                              Worker choice strategy.

                                                                                                                                                                                                                                                                              +
                                                                                                                                                                                                                                                                              diff --git a/docs/types/src.WorkerType.html b/docs/types/src.WorkerType.html index 1e8f6288a..b855f8930 100644 --- a/docs/types/src.WorkerType.html +++ b/docs/types/src.WorkerType.html @@ -1,2 +1,2 @@ -WorkerType | poolifier - v5.1.7
                                                                                                                                                                                                                                                                              poolifier - v5.1.7
                                                                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                                                                Type Alias WorkerType

                                                                                                                                                                                                                                                                                WorkerType: keyof typeof WorkerTypes

                                                                                                                                                                                                                                                                                Worker type.

                                                                                                                                                                                                                                                                                -
                                                                                                                                                                                                                                                                                +WorkerType | poolifier - v5.2.0
                                                                                                                                                                                                                                                                                poolifier - v5.2.0
                                                                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                                                                  Type Alias WorkerType

                                                                                                                                                                                                                                                                                  WorkerType: keyof typeof WorkerTypes

                                                                                                                                                                                                                                                                                  Worker type.

                                                                                                                                                                                                                                                                                  +
                                                                                                                                                                                                                                                                                  diff --git a/docs/types/src.Writable.html b/docs/types/src.Writable.html index 8a4af113f..672816138 100644 --- a/docs/types/src.Writable.html +++ b/docs/types/src.Writable.html @@ -1,3 +1,3 @@ -Writable | poolifier - v5.1.7
                                                                                                                                                                                                                                                                                  poolifier - v5.1.7
                                                                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                                                                    Type Alias Writable<T>Internal

                                                                                                                                                                                                                                                                                    Writable: { -readonly [P in keyof T]: T[P] }

                                                                                                                                                                                                                                                                                    Remove readonly modifier from all properties of T.

                                                                                                                                                                                                                                                                                    +Writable | poolifier - v5.2.0
                                                                                                                                                                                                                                                                                    poolifier - v5.2.0
                                                                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                                                                      Type Alias Writable<T>Internal

                                                                                                                                                                                                                                                                                      Writable: { -readonly [P in keyof T]: T[P] }

                                                                                                                                                                                                                                                                                      Remove readonly modifier from all properties of T.

                                                                                                                                                                                                                                                                                      Type Parameters

                                                                                                                                                                                                                                                                                      • T

                                                                                                                                                                                                                                                                                        Type to remove readonly modifier.

                                                                                                                                                                                                                                                                                        -
                                                                                                                                                                                                                                                                                      +
                                                                                                                                                                                                                                                                                      diff --git a/docs/variables/src.KillBehaviors.html b/docs/variables/src.KillBehaviors.html index e8be489e9..de2bd5cd2 100644 --- a/docs/variables/src.KillBehaviors.html +++ b/docs/variables/src.KillBehaviors.html @@ -1,2 +1,2 @@ -KillBehaviors | poolifier - v5.1.7
                                                                                                                                                                                                                                                                                      poolifier - v5.1.7
                                                                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                                                                        Variable KillBehaviorsConst

                                                                                                                                                                                                                                                                                        KillBehaviors: Readonly<{ HARD: "HARD"; SOFT: "SOFT" }> = ...

                                                                                                                                                                                                                                                                                        Enumeration of kill behaviors.

                                                                                                                                                                                                                                                                                        -
                                                                                                                                                                                                                                                                                        +KillBehaviors | poolifier - v5.2.0
                                                                                                                                                                                                                                                                                        poolifier - v5.2.0
                                                                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                                                                          Variable KillBehaviorsConst

                                                                                                                                                                                                                                                                                          KillBehaviors: Readonly<{ HARD: "HARD"; SOFT: "SOFT" }> = ...

                                                                                                                                                                                                                                                                                          Enumeration of kill behaviors.

                                                                                                                                                                                                                                                                                          +
                                                                                                                                                                                                                                                                                          diff --git a/docs/variables/src.Measurements.html b/docs/variables/src.Measurements.html index 3ed5573c2..d2128793a 100644 --- a/docs/variables/src.Measurements.html +++ b/docs/variables/src.Measurements.html @@ -1,2 +1,2 @@ -Measurements | poolifier - v5.1.7
                                                                                                                                                                                                                                                                                          poolifier - v5.1.7
                                                                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                                                                            Variable MeasurementsConst

                                                                                                                                                                                                                                                                                            Measurements: Readonly<{ elu: "elu"; runTime: "runTime"; waitTime: "waitTime" }> = ...

                                                                                                                                                                                                                                                                                            Enumeration of measurements.

                                                                                                                                                                                                                                                                                            -
                                                                                                                                                                                                                                                                                            +Measurements | poolifier - v5.2.0
                                                                                                                                                                                                                                                                                            poolifier - v5.2.0
                                                                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                                                                              Variable MeasurementsConst

                                                                                                                                                                                                                                                                                              Measurements: Readonly<{ elu: "elu"; runTime: "runTime"; waitTime: "waitTime" }> = ...

                                                                                                                                                                                                                                                                                              Enumeration of measurements.

                                                                                                                                                                                                                                                                                              +
                                                                                                                                                                                                                                                                                              diff --git a/docs/variables/src.PoolEvents.html b/docs/variables/src.PoolEvents.html index c5fbecd2f..43aa10b70 100644 --- a/docs/variables/src.PoolEvents.html +++ b/docs/variables/src.PoolEvents.html @@ -1,2 +1,2 @@ -PoolEvents | poolifier - v5.1.7
                                                                                                                                                                                                                                                                                              poolifier - v5.1.7
                                                                                                                                                                                                                                                                                                Preparing search index...

                                                                                                                                                                                                                                                                                                Variable PoolEventsConst

                                                                                                                                                                                                                                                                                                PoolEvents: Readonly<
                                                                                                                                                                                                                                                                                                    {
                                                                                                                                                                                                                                                                                                        backPressure: "backPressure";
                                                                                                                                                                                                                                                                                                        backPressureEnd: "backPressureEnd";
                                                                                                                                                                                                                                                                                                        busy: "busy";
                                                                                                                                                                                                                                                                                                        busyEnd: "busyEnd";
                                                                                                                                                                                                                                                                                                        destroy: "destroy";
                                                                                                                                                                                                                                                                                                        empty: "empty";
                                                                                                                                                                                                                                                                                                        error: "error";
                                                                                                                                                                                                                                                                                                        full: "full";
                                                                                                                                                                                                                                                                                                        fullEnd: "fullEnd";
                                                                                                                                                                                                                                                                                                        ready: "ready";
                                                                                                                                                                                                                                                                                                        taskError: "taskError";
                                                                                                                                                                                                                                                                                                    },
                                                                                                                                                                                                                                                                                                > = ...

                                                                                                                                                                                                                                                                                                Enumeration of pool events.

                                                                                                                                                                                                                                                                                                -
                                                                                                                                                                                                                                                                                                +PoolEvents | poolifier - v5.2.0
                                                                                                                                                                                                                                                                                                poolifier - v5.2.0
                                                                                                                                                                                                                                                                                                  Preparing search index...

                                                                                                                                                                                                                                                                                                  Variable PoolEventsConst

                                                                                                                                                                                                                                                                                                  PoolEvents: Readonly<
                                                                                                                                                                                                                                                                                                      {
                                                                                                                                                                                                                                                                                                          backPressure: "backPressure";
                                                                                                                                                                                                                                                                                                          backPressureEnd: "backPressureEnd";
                                                                                                                                                                                                                                                                                                          busy: "busy";
                                                                                                                                                                                                                                                                                                          busyEnd: "busyEnd";
                                                                                                                                                                                                                                                                                                          destroy: "destroy";
                                                                                                                                                                                                                                                                                                          empty: "empty";
                                                                                                                                                                                                                                                                                                          error: "error";
                                                                                                                                                                                                                                                                                                          full: "full";
                                                                                                                                                                                                                                                                                                          fullEnd: "fullEnd";
                                                                                                                                                                                                                                                                                                          ready: "ready";
                                                                                                                                                                                                                                                                                                          taskError: "taskError";
                                                                                                                                                                                                                                                                                                      },
                                                                                                                                                                                                                                                                                                  > = ...

                                                                                                                                                                                                                                                                                                  Enumeration of pool events.

                                                                                                                                                                                                                                                                                                  +
                                                                                                                                                                                                                                                                                                  diff --git a/docs/variables/src.PoolTypes.html b/docs/variables/src.PoolTypes.html index b1042e74a..da54da039 100644 --- a/docs/variables/src.PoolTypes.html +++ b/docs/variables/src.PoolTypes.html @@ -1,2 +1,2 @@ -PoolTypes | poolifier - v5.1.7
                                                                                                                                                                                                                                                                                                  poolifier - v5.1.7
                                                                                                                                                                                                                                                                                                    Preparing search index...

                                                                                                                                                                                                                                                                                                    Variable PoolTypesConst

                                                                                                                                                                                                                                                                                                    PoolTypes: Readonly<{ dynamic: "dynamic"; fixed: "fixed" }> = ...

                                                                                                                                                                                                                                                                                                    Enumeration of pool types.

                                                                                                                                                                                                                                                                                                    -
                                                                                                                                                                                                                                                                                                    +PoolTypes | poolifier - v5.2.0
                                                                                                                                                                                                                                                                                                    poolifier - v5.2.0
                                                                                                                                                                                                                                                                                                      Preparing search index...

                                                                                                                                                                                                                                                                                                      Variable PoolTypesConst

                                                                                                                                                                                                                                                                                                      PoolTypes: Readonly<{ dynamic: "dynamic"; fixed: "fixed" }> = ...

                                                                                                                                                                                                                                                                                                      Enumeration of pool types.

                                                                                                                                                                                                                                                                                                      +
                                                                                                                                                                                                                                                                                                      diff --git a/docs/variables/src.WorkerChoiceStrategies.html b/docs/variables/src.WorkerChoiceStrategies.html index d4667e549..6393c0d95 100644 --- a/docs/variables/src.WorkerChoiceStrategies.html +++ b/docs/variables/src.WorkerChoiceStrategies.html @@ -1,2 +1,2 @@ -WorkerChoiceStrategies | poolifier - v5.1.7
                                                                                                                                                                                                                                                                                                      poolifier - v5.1.7
                                                                                                                                                                                                                                                                                                        Preparing search index...

                                                                                                                                                                                                                                                                                                        Variable WorkerChoiceStrategiesConst

                                                                                                                                                                                                                                                                                                        WorkerChoiceStrategies: Readonly<
                                                                                                                                                                                                                                                                                                            {
                                                                                                                                                                                                                                                                                                                FAIR_SHARE: "FAIR_SHARE";
                                                                                                                                                                                                                                                                                                                INTERLEAVED_WEIGHTED_ROUND_ROBIN: "INTERLEAVED_WEIGHTED_ROUND_ROBIN";
                                                                                                                                                                                                                                                                                                                LEAST_BUSY: "LEAST_BUSY";
                                                                                                                                                                                                                                                                                                                LEAST_ELU: "LEAST_ELU";
                                                                                                                                                                                                                                                                                                                LEAST_USED: "LEAST_USED";
                                                                                                                                                                                                                                                                                                                ROUND_ROBIN: "ROUND_ROBIN";
                                                                                                                                                                                                                                                                                                                WEIGHTED_ROUND_ROBIN: "WEIGHTED_ROUND_ROBIN";
                                                                                                                                                                                                                                                                                                            },
                                                                                                                                                                                                                                                                                                        > = ...

                                                                                                                                                                                                                                                                                                        Enumeration of worker choice strategies.

                                                                                                                                                                                                                                                                                                        -
                                                                                                                                                                                                                                                                                                        +WorkerChoiceStrategies | poolifier - v5.2.0
                                                                                                                                                                                                                                                                                                        poolifier - v5.2.0
                                                                                                                                                                                                                                                                                                          Preparing search index...

                                                                                                                                                                                                                                                                                                          Variable WorkerChoiceStrategiesConst

                                                                                                                                                                                                                                                                                                          WorkerChoiceStrategies: Readonly<
                                                                                                                                                                                                                                                                                                              {
                                                                                                                                                                                                                                                                                                                  FAIR_SHARE: "FAIR_SHARE";
                                                                                                                                                                                                                                                                                                                  INTERLEAVED_WEIGHTED_ROUND_ROBIN: "INTERLEAVED_WEIGHTED_ROUND_ROBIN";
                                                                                                                                                                                                                                                                                                                  LEAST_BUSY: "LEAST_BUSY";
                                                                                                                                                                                                                                                                                                                  LEAST_ELU: "LEAST_ELU";
                                                                                                                                                                                                                                                                                                                  LEAST_USED: "LEAST_USED";
                                                                                                                                                                                                                                                                                                                  ROUND_ROBIN: "ROUND_ROBIN";
                                                                                                                                                                                                                                                                                                                  WEIGHTED_ROUND_ROBIN: "WEIGHTED_ROUND_ROBIN";
                                                                                                                                                                                                                                                                                                              },
                                                                                                                                                                                                                                                                                                          > = ...

                                                                                                                                                                                                                                                                                                          Enumeration of worker choice strategies.

                                                                                                                                                                                                                                                                                                          +
                                                                                                                                                                                                                                                                                                          diff --git a/docs/variables/src.WorkerTypes.html b/docs/variables/src.WorkerTypes.html index 73e32e9b0..0f72a9bfa 100644 --- a/docs/variables/src.WorkerTypes.html +++ b/docs/variables/src.WorkerTypes.html @@ -1,2 +1,2 @@ -WorkerTypes | poolifier - v5.1.7
                                                                                                                                                                                                                                                                                                          poolifier - v5.1.7
                                                                                                                                                                                                                                                                                                            Preparing search index...

                                                                                                                                                                                                                                                                                                            Variable WorkerTypesConst

                                                                                                                                                                                                                                                                                                            WorkerTypes: Readonly<{ cluster: "cluster"; thread: "thread" }> = ...

                                                                                                                                                                                                                                                                                                            Enumeration of worker types.

                                                                                                                                                                                                                                                                                                            -
                                                                                                                                                                                                                                                                                                            +WorkerTypes | poolifier - v5.2.0
                                                                                                                                                                                                                                                                                                            poolifier - v5.2.0
                                                                                                                                                                                                                                                                                                              Preparing search index...

                                                                                                                                                                                                                                                                                                              Variable WorkerTypesConst

                                                                                                                                                                                                                                                                                                              WorkerTypes: Readonly<{ cluster: "cluster"; thread: "thread" }> = ...

                                                                                                                                                                                                                                                                                                              Enumeration of worker types.

                                                                                                                                                                                                                                                                                                              +
                                                                                                                                                                                                                                                                                                              -- 2.53.0