repositories
/
e-mobility-charging-stations-simulator.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'main' into combined-prs-branch
[e-mobility-charging-stations-simulator.git]
/
src
/
worker
/
WorkerSet.ts
diff --git
a/src/worker/WorkerSet.ts
b/src/worker/WorkerSet.ts
index f1ab1cf5482efaadd25398aa7dfe0ae521d68912..4a43e27b0601c44d3035c77411640cefd2fe798a 100644
(file)
--- a/
src/worker/WorkerSet.ts
+++ b/
src/worker/WorkerSet.ts
@@
-52,6
+52,7
@@
export class WorkerSet extends WorkerAbstract<WorkerData> {
version: workerSetVersion,
type: 'set',
worker: 'thread',
version: workerSetVersion,
type: 'set',
worker: 'thread',
+ started: this.started,
size: this.size,
elementsExecuting: [...this.workerSet].reduce(
(accumulator, workerSetElement) => accumulator + workerSetElement.numberOfWorkerElements,
size: this.size,
elementsExecuting: [...this.workerSet].reduce(
(accumulator, workerSetElement) => accumulator + workerSetElement.numberOfWorkerElements,
@@
-91,13
+92,14
@@
export class WorkerSet extends WorkerAbstract<WorkerData> {
resolve()
})
})
resolve()
})
})
+ worker.unref()
await worker.terminate()
await waitWorkerExit
await worker.terminate()
await waitWorkerExit
- this.emitter?.emit(WorkerSetEvents.stopped, this.info)
- this.emitter?.emitDestroy()
- this.emitter?.removeAllListeners()
- this.started = false
}
}
+ this.emitter?.emit(WorkerSetEvents.stopped, this.info)
+ this.started = false
+ this.emitter?.emitDestroy()
+ this.emitter?.removeAllListeners()
}
/** @inheritDoc */
}
/** @inheritDoc */
@@
-146,6
+148,8
@@
export class WorkerSet extends WorkerAbstract<WorkerData> {
) {
this.addWorkerSetElement()
}
) {
this.addWorkerSetElement()
}
+ worker.unref()
+ worker.terminate().catch(error => this.emitter?.emit(WorkerSetEvents.error, error))
})
worker.on('online', this.workerOptions.poolOptions?.onlineHandler ?? EMPTY_FUNCTION)
worker.on('exit', this.workerOptions.poolOptions?.exitHandler ?? EMPTY_FUNCTION)
})
worker.on('online', this.workerOptions.poolOptions?.onlineHandler ?? EMPTY_FUNCTION)
worker.on('exit', this.workerOptions.poolOptions?.exitHandler ?? EMPTY_FUNCTION)