X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Fclasses%2FClusterWorker.html;h=cc900af0538b1f61747c09fb5e64eae92c50ebce;hb=ef58d1c56c04f43dc88a76ef35d0127fe2bab27d;hp=335e4252dac1237f048dc92f375bc4db676c7ea2;hpb=812ad701baefad24cad2df8f9a60bf4d581d8697;p=poolifier.git diff --git a/docs/classes/ClusterWorker.html b/docs/classes/ClusterWorker.html index 335e4252..cc900af0 100644 --- a/docs/classes/ClusterWorker.html +++ b/docs/classes/ClusterWorker.html @@ -1,541 +1,110 @@ -ClusterWorker | poolifier
-
- -
-
-
-
- -

Class ClusterWorker<Data, Response>

-
-

A cluster worker used by a poolifier ClusterPool.

+ClusterWorker | poolifier - v3.0.9

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, but the minimum number of workers will be guaranteed.

- -

Author

Christopher Quadflieg

- -

Since

2.0.0

-
-
-

Type Parameters

-
    -
  • -

    Data = unknown

    -

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

    -
  • -
  • -

    Response = unknown

    -

    Type of response the worker sends back to the main worker. This can only be serializable data.

    -
-
-

Hierarchy

-
    -
  • AbstractWorker<Worker, Data, Response> -
      -
    • ClusterWorker
-
-
-
- -
-
-

Constructors

-
- -
    - -
  • -

    Constructs a new poolifier cluster worker.

    -
    -
    -

    Type Parameters

    -
      -
    • -

      Data = unknown

    • -
    • -

      Response = unknown

    -
    -

    Parameters

    -
      -
    • -
      fn: ((data: Data) => Response)
      -

      Function processed by the worker when the pool's execution function is invoked.

      -
      -
        -
      • -
          -
        • (data: Data): Response
        • -
        • -
          -

          Parameters

          -
            -
          • -
            data: Data
          -

          Returns Response

    • -
    • -
      opts: WorkerOptions = {}
      -

      Options for the worker.

      -
    -

    Returns ClusterWorker<Data, Response>

-
-

Properties

-
- -
aliveInterval?: Timeout
-

Handler id of the aliveInterval worker alive check.

-
-
- -
isMain: boolean
-

Whether this is the main worker or not.

-
-
- -
lastTaskTimestamp: number
-

Timestamp of the last task processed by this worker.

-
-
- -
mainWorker: undefined | null | Worker
-

Reference to main worker.

-
-
- -
opts: WorkerOptions = ...
-

Options for the worker.

-
-
-

Methods

-
- -
    - -
  • -
    -

    Returns

    The unique asyncId assigned to the resource.

    -
    -

    Returns number

-
- -
    - -
  • -

    Binds the given function to execute to this AsyncResource's scope.

    -

    The returned function will have an asyncResource property referencing -the AsyncResource to which the function is bound.

    - -

    Since

    v14.8.0, v12.19.0

    -
    -
    -

    Type Parameters

    -
      -
    • -

      Func extends ((...args: any[]) => any)

    -
    -

    Parameters

    -
      -
    • -
      fn: Func
      -

      The function to bind to the current AsyncResource.

      -
    -

    Returns Func & {
        asyncResource: AsyncResource;
    }

-
- -
    - -
  • -

    Checks if the worker should be terminated, because its living too long.

    -
    -

    Returns void

-
- -

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

Constructors

Properties

activeInterval?: Timeout

Handler id of the activeInterval worker activity check.

+
isMain: boolean

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.

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

Task function(s) processed by the worker when the pool's execution function is invoked.

+

Accessors

Methods

  • Returns number

    The unique asyncId assigned to the resource.

    +
  • Binds the given function to execute to this AsyncResource's scope.

    +

    Type Parameters

    • Func extends ((...args) => any)

    Parameters

    • fn: Func

      The function to bind to the current AsyncResource.

      +

    Returns Func

    Since

    v14.8.0, v12.19.0

    +
  • Call all destroy hooks. This should only ever be called once. An error will be thrown if it is called more than once. This must be manually called. If the resource is left to be collected by the GC then the destroy hooks will never be called.

    - -

    Returns

    A reference to asyncResource.

    -
    -

    Returns ClusterWorker<Data, Response>

-
- -
    - -
  • -

    Returns the main worker.

    - -

    Returns

    Reference to the main worker.

    -
    -

    Returns Worker

-
- -
    - -
  • -
    -

    Inherit Doc

    -
    -

    Parameters

    -
      -
    • -
      e: string | Error
    -

    Returns string

-
- -
    - -
  • -

    Worker message listener.

    -
    -
    -

    Parameters

    -
      -
    • -
      message: MessageValue<Data, Worker>
      -

      Message received.

      -
    • -
    • -
      fn: ((data: Data) => Response)
      -

      Function processed by the worker when the pool's execution function is invoked.

      -
      -
        -
      • -
          -
        • (data: Data): Response
        • -
        • -
          -

          Parameters

          -
            -
          • -
            data: Data
          -

          Returns Response

    -

    Returns void

-
- -
    - -
  • -

    Runs the given function synchronously.

    -
    -
    -

    Parameters

    -
      -
    • -
      fn: ((data?: Data) => Response)
      -

      Function that will be executed.

      -
      -
        -
      • -
          -
        • (data?: Data): Response
        • -
        • -
          -

          Parameters

          -
            -
          • -
            Optional data: Data
          -

          Returns Response

    • -
    • -
      message: MessageValue<Data, unknown>
      -

      Input data for the given function.

      -
    -

    Returns void

-
- -
    - -
  • -

    Runs the given function asynchronously.

    -
    -
    -

    Parameters

    -
      -
    • -
      fn: ((data?: Data) => Promise<Response>)
      -

      Function that will be executed.

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

          Parameters

          -
            -
          • -
            Optional data: Data
          -

          Returns Promise<Response>

    • -
    • -
      message: MessageValue<Data, unknown>
      -

      Input data for the given function.

      -
    -

    Returns void

-
- -
    - -
  • -

    Call the provided function with the provided arguments in the execution context +

    Returns ClusterWorker<Data, Response>

    A reference to asyncResource.

    +
  • Handles an error and convert it to a string so it can be sent back to the main worker.

    +

    Parameters

    • error: string | Error

      The error raised by the worker.

      +

    Returns string

    The error message.

    +
  • Call the provided function with the provided arguments in the execution context of the async resource. This will establish the context, trigger the AsyncHooks before callbacks, call the function, trigger the AsyncHooks after callbacks, and then restore the original execution context.

    - -

    Since

    v9.6.0

    -
    -
    -

    Type Parameters

    -
      -
    • -

      This

    • -
    • -

      Result

    -
    -

    Parameters

    -
      -
    • -
      fn: ((this: This, ...args: any[]) => Result)
      -

      The function to call in the execution context of this async resource.

      -
      -
        -
      • -
          -
        • (this: This, ...args: any[]): Result
        • -
        • -
          -

          Parameters

          -
            -
          • -
            this: This
          • -
          • -
            Rest ...args: any[]
          -

          Returns Result

    • -
    • -
      Optional thisArg: This
      -

      The receiver to be used for the function call.

      -
    • -
    • -
      Rest ...args: any[]
      -

      Optional arguments to pass to the function.

      -
    -

    Returns Result

-
- -
    - -
  • -
    -

    Inherit Doc

    -
    -

    Parameters

    -
      -
    • -
      message: MessageValue<Response, unknown>
    -

    Returns void

-
- -
    - -
  • -
    -

    Returns

    The same triggerAsyncId that is passed to the AsyncResource constructor.

    -
    -

    Returns number

-
- -
    - -
  • -

    Binds the given function to the current execution context.

    -

    The returned function will have an asyncResource property referencing -the AsyncResource to which the function is bound.

    - -

    Since

    v14.8.0, v12.19.0

    -
    -
    -

    Type Parameters

    -
      -
    • -

      Func extends ((this: ThisArg, ...args: any[]) => any)

    • -
    • -

      ThisArg

    -
    -

    Parameters

    -
      -
    • -
      fn: Func
      -

      The function to bind to the current execution context.

      -
    • -
    • -
      Optional type: string
      -

      An optional name to associate with the underlying AsyncResource.

      -
    • -
    • -
      Optional thisArg: ThisArg
    -

    Returns Func & {
        asyncResource: AsyncResource;
    }

-
-
-

Generated using TypeDoc

-
\ No newline at end of file +

Type Parameters

  • This

  • Result

Parameters

  • fn: ((this, ...args) => Result)

    The function to call in the execution context of this async resource.

    +
      • (this, ...args): Result
      • Parameters

        • this: This
        • Rest ...args: any[]

        Returns Result

  • Optional thisArg: This

    The receiver to be used for the function call.

    +
  • Rest ...args: any[]

    Optional arguments to pass to the function.

    +

Returns Result

Since

v9.6.0

+
  • Returns number

    The same triggerAsyncId that is passed to the AsyncResource constructor.

    +
  • Binds the given function to the current execution context.

    +

    Type Parameters

    • Func extends ((this, ...args) => any)

    • ThisArg

    Parameters

    • fn: Func

      The function to bind to the current execution context.

      +
    • Optional type: string

      An optional name to associate with the underlying AsyncResource.

      +
    • Optional thisArg: ThisArg

    Returns Func

    Since

    v14.8.0, v12.19.0

    +

Generated using TypeDoc

\ No newline at end of file