UNPKG

node-worker-threads-pool-ts

Version:

Simple worker threads pool using Node's worker_threads module. Compatible with ES6+ Promise, Typescript, Async/Await.

28 lines (27 loc) 1.32 kB
import { DynamicPool, DynamicPoolWorkerParam } from "./dynamic-pool"; import { TaskConfig } from "./pool-worker"; import { Pool, TransferList } from "./pool"; declare class BaseTaskExecutor<ParamType, ResultType> { protected _taskConfig: TaskConfig; protected _pool: Pool; protected _called: boolean; constructor(pool: Pool); /** Set timeout (in millisecond) to this task. */ setTimeout(t: number): this; /** * @see {@link https://nodejs.org/dist/latest-v14.x/docs/api/worker_threads.html#worker_threads_port_postmessage_value_transferlist transferList} */ setTransferList(transferList: TransferList): this; /** Execute this task with the parameter provided. */ exec(param?: ParamType | DynamicPoolWorkerParam): Promise<ResultType>; } /** Executor for StaticPool. Used to apply some advanced settings to a task. */ export declare class StaticTaskExecutor<ParamType, ResultType> extends BaseTaskExecutor<ParamType, ResultType> { } /** Executor for DynamicPool. Used to apply some advanced settings to a task. */ export declare class DynamicTaskExecutor<ParamType, ResultType> extends BaseTaskExecutor<ParamType, ResultType> { private _code; constructor(dynamicPool: DynamicPool, task: Function); exec(param?: ParamType): Promise<ResultType>; } export {};