X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fworker%2Fabstract-worker.ts;h=4f741b47acf134146069e33d866b8f40a09e0bb1;hb=46eec6ddf0904bb757d333c364885f1f6980caeb;hp=0a6530e3889c61bb925ce4d787736ba72c104001;hpb=4dc274761ce688172117009d1b306077d321f461;p=poolifier.git diff --git a/src/worker/abstract-worker.ts b/src/worker/abstract-worker.ts index 0a6530e3..4f741b47 100644 --- a/src/worker/abstract-worker.ts +++ b/src/worker/abstract-worker.ts @@ -12,8 +12,8 @@ const DEFAULT_KILL_BEHAVIOR: KillBehavior = KillBehaviors.SOFT * Base class containing some shared logic for all poolifier workers. * * @template MainWorker Type of main worker. - * @template Data Type of data this worker receives from pool's execution. - * @template Response Type of response the worker sends back to the main worker. + * @template Data Type of data this worker receives from pool's execution. This can only be serializable data. + * @template Response Type of response the worker sends back to the main worker. This can only be serializable data. */ export abstract class AbstractWorker< MainWorker extends Worker | MessagePort, @@ -41,11 +41,6 @@ export abstract class AbstractWorker< */ protected readonly interval?: NodeJS.Timeout - /** - * This value is immediately set to true when the kill from the main worker is received. - */ - private isKilled: boolean = false - /** * Constructs a new poolifier worker. * @@ -95,7 +90,6 @@ export abstract class AbstractWorker< this.mainWorker = value.parent } else if (value.kill) { // Here is time to kill this worker, just clearing the interval - this.isKilled = true if (this.interval) clearInterval(this.interval) this.emitDestroy() } @@ -107,7 +101,7 @@ export abstract class AbstractWorker< * * @param fn The function that should be defined. */ - private checkFunctionInput (fn: (data: Data) => Response) { + private checkFunctionInput (fn: (data: Data) => Response): void { if (!fn) throw new Error('fn parameter is mandatory') } @@ -134,7 +128,7 @@ export abstract class AbstractWorker< * Check to see if the worker should be terminated, because its living too long. */ protected checkAlive (): void { - if (Date.now() - this.lastTask > this.maxInactiveTime && !this.isKilled) { + if (Date.now() - this.lastTask > this.maxInactiveTime) { this.sendToMainWorker({ kill: this.killBehavior }) } }