this.chooseWorker.bind(this)
this.internalExecute.bind(this)
+ this.checkAndEmitFull.bind(this)
this.checkAndEmitBusy.bind(this)
this.sendToWorker.bind(this)
const [workerKey, worker] = this.chooseWorker()
const messageId = crypto.randomUUID()
const res = this.internalExecute(workerKey, worker, messageId)
+ this.checkAndEmitFull()
this.checkAndEmitBusy()
this.sendToWorker(worker, {
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
}
}
+ private checkAndEmitFull (): void {
+ if (
+ this.type === PoolType.DYNAMIC &&
+ this.opts.enableEvents === true &&
+ this.full
+ ) {
+ this.emitter?.emit('full')
+ }
+ }
+
/**
* Gets worker tasks usage.
*