- worker.on('error', () => {
- /* This is intentional */
- });
- worker.on('exit', (code) => {
- WorkerUtils.defaultExitHandler(code);
- this.workerSet.delete(this.getWorkerSetElementByWorker(worker));
- });
- this.workerSet.add({ worker, numberOfWorkerElements: 0 });
- // Start worker sequentially to optimize memory at startup
- this.workerOptions.workerStartDelay > 0 &&
- (await Utils.sleep(this.workerOptions.workerStartDelay));
- }
-
- private getLastWorkerSetElement(): WorkerSetElement {
- let workerSetElement: WorkerSetElement;
- for (workerSetElement of this.workerSet) {
- /* This is intentional */
- }
+ worker.on('exit', defaultExitHandler.bind(this) as (exitCode: number) => void);
+ worker.on('exit', () => this.workerSet.delete(this.getWorkerSetElementByWorker(worker)));
+ const workerSetElement: WorkerSetElement = { worker, numberOfWorkerElements: 0 };
+ this.workerSet.add(workerSetElement);