X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Fclasses%2FDynamicThreadPool.html;h=02e1b442e92a7705258996de8b9e4622c676ec49;hb=e39450c0889208d6dcde666fc05b95fe7a98ee29;hp=6df05d2fc9b36f7f86332c692681a6e5490b180c;hpb=fb61ac734cb4236948a9c7b58fe55d2ca5665ef2;p=poolifier.git diff --git a/docs/classes/DynamicThreadPool.html b/docs/classes/DynamicThreadPool.html index 6df05d2f..02e1b442 100644 --- a/docs/classes/DynamicThreadPool.html +++ b/docs/classes/DynamicThreadPool.html @@ -1,4 +1,4 @@ -DynamicThreadPool | poolifier
+DynamicThreadPool | poolifier
  • Preparing search index...
  • -
  • The search index is not available
poolifier
+
  • The search index is not available
  • poolifier
    -
    +
    • poolifier
    • @@ -18,7 +18,7 @@

      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, an event is emitted. If you want to listen to this event, use the pool's emitter.

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

      Author

      Alessandro Pio Ardizio

      @@ -33,16 +33,16 @@ When the maximum number of threads is reached, an event is emitted. If you want
    • Response = unknown

      -

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

      +

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

    Hierarchy

    +
  • Defined in src/pools/thread/dynamic.ts:17
  • @@ -56,41 +56,36 @@ When the maximum number of threads is reached, an event is emitted. If you want

    Properties

    Accessors

    -

    Methods

    -
    afterPromiseWorkerResponseHook +
    afterTaskExecutionHook afterWorkerSetup -beforePromiseWorkerResponseHook -chooseWorker +beforeTaskExecutionHook +chooseWorkerNode createAndSetupWorker createWorker destroy -destroyWorker +destroyWorker execute -findFreeWorker -getWorkerAverageTasksRunTime -getWorkerIndex -getWorkerRunningTasks -internalExecute -internalGetBusyStatus +findFreeWorkerNodeKey +internalBusy isMain -registerWorkerMessageListener -removeWorker +registerWorkerMessageListener sendToWorker setWorkerChoiceStrategy setupHook @@ -101,7 +96,7 @@ When the maximum number of threads is reached, an event is emitted. If you want
    -

    Returns DynamicThreadPool<Data, Response>

    +
  • Defined in src/pools/thread/dynamic.ts:29
  • Properties

    emitter?: PoolEmitter
    -
    -

    Inherit Doc

    +
  • Defined in src/pools/abstract-pool.ts:41
  • -
    filePath: string
    -
    - -
    max: number
    -
    - -
    nextMessageId: number = 0
    -

    Id of the next message.

    +
  • Defined in src/pools/abstract-pool.ts:76
  • +
    + +
    max: number
    +

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

    +
  • Defined in src/pools/thread/dynamic.ts:31
  • -
    numberOfWorkers: number
    +
  • Defined in src/pools/abstract-pool.ts:75
  • -
    -
    - -
    promiseMap: Map<number, PromiseWorkerResponseWrapper<ThreadWorkerWithMessageChannel, Response>> = ...
    -

    The promise map.

    +
  • Defined in src/pools/abstract-pool.ts:77
  • +
    + +
    promiseResponseMap: Map<string, PromiseResponseWrapper<ThreadWorkerWithMessageChannel, Response>> = ...
    +

    The execution response promise map.

      -
    • key: This is the message Id of each submitted task.
    • -
    • value: An object that contains the worker, the resolve function and the reject function.
    • +
    • key: The message id of each submitted task.
    • +
    • value: An object that contains the worker, the execution response promise resolve and reject callbacks.
    -

    When we receive a message from the worker we get a map entry and resolve/reject the promise based on the message.

    +

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

    +
  • Defined in src/pools/abstract-pool.ts:51
  • -
    workerChoiceStrategyContext: WorkerChoiceStrategyContext<ThreadWorkerWithMessageChannel, Data, Response>
    -

    Worker choice strategy instance implementing the worker choice algorithm.

    -

    Default to a strategy implementing a round robin algorithm.

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

    Worker choice strategy context referencing a worker choice algorithm implementation.

    +

    Default to a round robin algorithm.

    -
    - - -
    -

    Inherit Doc

    -
    - -
    workersTasksUsage: Map<ThreadWorkerWithMessageChannel, TasksUsage> = ...
    -
    -

    Inherit Doc

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

    Pool worker nodes.

    +

    Accessors

    -
    - -
    +
    + +
      +
    • get full(): boolean
    • +
    • +

      Whether the pool is full or not.

      +

      The pool filling boolean status.

      +
      +

      Returns boolean

    +
    + +
      +
    • get numberOfQueuedTasks(): number
    • +
    • +

      Number of tasks queued in the pool.

      +
      +

      Returns number

    +
    + +
    • get numberOfRunningTasks(): number
    • -
      -

      Inherit Doc

      +

      Number of tasks running in the pool.

      +

      Returns number

    +
  • Defined in src/pools/abstract-pool.ts:176
    • -
    • get type(): PoolType
    • +
    • get type(): PoolType
    • -
      -

      Inherit Doc

      -

      Returns PoolType

    +
  • Defined in src/pools/thread/dynamic.ts:39
  • Methods

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

    -
    - +
  • Defined in src/pools/thread/fixed.ts:85
  • +
    +
    -
    - +
  • Defined in src/pools/abstract-pool.ts:324
  • +
    +
    +
  • Defined in src/pools/abstract-pool.ts:368
  • +
  • Defined in src/pools/abstract-pool.ts:430
  • +
  • Defined in src/pools/thread/fixed.ts:78
  • -
    - -
    +
    + +

    Returns Promise<void>

    +
  • Defined in src/pools/thread/fixed.ts:54
    • - +
    • -
      -

      Inherit Doc

      +

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

      + +

      Returns

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

      +

      Parameters

      • -
        data: Data
      -

      Returns Promise<Response>

    +

    Returns Promise<Response>

    -
    - +
  • Defined in src/pools/abstract-pool.ts:256
  • +
    +
    -
    - -
    -
    - -
    -
    - -
    -
    - -
    -
    - +
  • Defined in src/pools/abstract-pool.ts:249
  • +
    +
    +
  • Defined in src/pools/abstract-pool.ts:244
  • -
    - -
    +
    + +
      +
    • -
      -

      Inherit Doc

      +

      Registers a listener callback on the given worker.

      +

      Type Parameters

        @@ -501,104 +467,96 @@ Can be overridden.

        Parameters

        • -
          messageChannel: ThreadWorkerWithMessageChannel
        • +
          messageChannel: ThreadWorkerWithMessageChannel
          +

          The worker which should register a listener.

          +
        • -
          listener: ((message: MessageValue<Message, unknown>) => void)
          +
          listener: ((message: MessageValue<Message, unknown>) => void)
          +

          The message listener callback.

          +
            • -
            • (message: MessageValue<Message, unknown>): void
            • +
            • (message: MessageValue<Message, unknown>): void
            • Parameters

              • -
                message: MessageValue<Message, unknown>
              +
              message: MessageValue<Message, unknown>

    Returns void

    Returns void

    -
    - -
    +
  • Defined in src/pools/thread/fixed.ts:70
  • Returns void

    +
  • Defined in src/pools/thread/fixed.ts:62
  • Returns void

    +
  • Defined in src/pools/abstract-pool.ts:209
  • +
  • Defined in src/pools/abstract-pool.ts:309
  • - +
    +
    -
    +
  • constructor
  • +
  • emitter
  • +
  • filePath
  • +
  • max
  • +
  • numberOfWorkers
  • +
  • opts
  • +
  • promiseResponseMap
  • +
  • workerChoiceStrategyContext
  • +
  • workerNodes
  • +
  • busy
  • +
  • full
  • +
  • numberOfQueuedTasks
  • +
  • numberOfRunningTasks
  • +
  • type
  • +
  • afterTaskExecutionHook
  • +
  • afterWorkerSetup
  • +
  • beforeTaskExecutionHook
  • +
  • chooseWorkerNode
  • +
  • createAndSetupWorker
  • +
  • createWorker
  • +
  • destroy
  • +
  • destroyWorker
  • +
  • execute
  • +
  • findFreeWorkerNodeKey
  • +
  • internalBusy
  • +
  • isMain
  • +
  • registerWorkerMessageListener
  • +
  • sendToWorker
  • +
  • setWorkerChoiceStrategy
  • +
  • setupHook
  • +
  • workerListener
  • + +

    Generated using TypeDoc

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