Data = unknown,
Response = unknown
> extends AsyncResource {
+ /**
+ * Worker id.
+ */
+ protected abstract id: number
/**
* Task function(s) processed by the worker when the pool's `execution` function is invoked.
*/
(this.opts.maxInactiveTime ?? DEFAULT_MAX_INACTIVE_TIME) / 2
)
this.checkAlive.bind(this)()
+ this.mainWorker?.on('message', this.messageListener.bind(this))
}
- this.mainWorker?.on('message', this.messageListener.bind(this))
}
private checkWorkerOptions (opts: WorkerOptions): void {
* Handles an error and convert it to a string so it can be sent back to the main worker.
*
* @param e - The error raised by the worker.
- * @returns Message of the error.
+ * @returns The error message.
*/
protected handleError (e: Error | string): string {
return e as string
this.sendToMainWorker({
data: res,
taskPerformance,
+ workerId: this.id,
id: message.id
})
} catch (e) {
const err = this.handleError(e as Error)
this.sendToMainWorker({
taskError: {
+ workerId: this.id,
message: err,
data: message.data
},
this.sendToMainWorker({
data: res,
taskPerformance,
+ workerId: this.id,
id: message.id
})
return null
const err = this.handleError(e as Error)
this.sendToMainWorker({
taskError: {
+ workerId: this.id,
message: err,
data: message.data
},