- const worker = new Worker(this.workerScript);
- worker.on(
- 'message',
- (this.workerOptions?.messageHandler ?? WorkerConstants.EMPTY_FUNCTION).bind(
- this
- ) as MessageHandler<Worker>
- );
- worker.on('error', defaultErrorHandler.bind(this) as (err: Error) => void);
+ this.workerStartup = true;
+ const worker = new Worker(this.workerScript, {
+ env: SHARE_ENV,
+ ...this.workerOptions.poolOptions?.workerOptions,
+ });
+ worker.on('message', this.workerOptions.poolOptions?.messageHandler ?? EMPTY_FUNCTION);
+ worker.on('message', (message: WorkerMessage<WorkerData>) => {
+ if (message.event === WorkerMessageEvents.startedWorkerElement) {
+ this.emitter?.emit(WorkerSetEvents.elementStarted, this.info);
+ } else if (message.event === WorkerMessageEvents.startWorkerElementError) {
+ this.emitter?.emit(WorkerSetEvents.elementError, message.data);
+ }
+ });
+ worker.on('error', this.workerOptions.poolOptions?.errorHandler ?? EMPTY_FUNCTION);