import type { Worker } from 'node:worker_threads';
-import { type PoolEvent, PoolEvents, type PoolOptions } from 'poolifier';
+import { type PoolEvent, PoolEvents, type ThreadPoolOptions } from 'poolifier';
export enum WorkerProcessType {
workerSet = 'workerSet',
}
export type SetInfo = {
+ version: string;
+ type: string;
+ worker: string;
size: number;
- runningElements: number;
+ elementsExecuting: number;
elementsPerWorker: number;
};
} as const;
export type WorkerEvents = PoolEvent | WorkerSetEvents;
-export type MessageHandler<T> = (this: T, message: unknown) => void;
-
export type WorkerOptions = {
workerStartDelay?: number;
elementStartDelay?: number;
poolMaxSize: number;
poolMinSize: number;
elementsPerWorker?: number;
- poolOptions?: PoolOptions<Worker>;
- messageHandler?: MessageHandler<Worker>;
+ poolOptions?: ThreadPoolOptions;
};
export type WorkerData = Record<string, unknown>;