X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fpools%2Fcluster%2Ffixed.ts;h=7cc3bf53950870a0ac2ee6e1a99871bfb72e4214;hb=c510fea7f620c9b406f1b3f655729ad83ed32c2b;hp=601ee532a0964c84a45016f50db523e80c2e12d4;hpb=5c5a1fb79906f18560012263239e7bd611ee8d2b;p=poolifier.git diff --git a/src/pools/cluster/fixed.ts b/src/pools/cluster/fixed.ts index 601ee532..7cc3bf53 100644 --- a/src/pools/cluster/fixed.ts +++ b/src/pools/cluster/fixed.ts @@ -59,33 +59,33 @@ export class FixedClusterPool< } protected destroyWorker (worker: Worker): void { + this.sendToWorker(worker, { kill: 1 }) worker.kill() - // FIXME: The tests are currently failing, so these must be changed first } protected sendToWorker (worker: Worker, message: MessageValue): void { worker.send(message) } - protected registerWorkerMessageListener ( - port: Worker, - listener: (message: MessageValue) => void + protected registerWorkerMessageListener ( + worker: Worker, + listener: (message: MessageValue) => void ): void { - port.on('message', listener) + worker.on('message', listener) } - protected unregisterWorkerMessageListener ( - port: Worker, - listener: (message: MessageValue) => void + protected unregisterWorkerMessageListener ( + worker: Worker, + listener: (message: MessageValue) => void ): void { - port.removeListener('message', listener) + worker.removeListener('message', listener) } - protected newWorker (): Worker { + protected createWorker (): Worker { return fork(this.opts.env) } - protected afterNewWorkerPushed (worker: Worker): void { + protected afterWorkerSetup (worker: Worker): void { // we will attach a listener for every task, // when task is completed the listener will be removed but to avoid warnings we are increasing the max listeners size worker.setMaxListeners(this.opts.maxTasks ?? 1000)