()
| 215 | |
| 216 | |
| 217 | private scheduleWork() { |
| 218 | this.debug(`Attempt de-queueing a task in order to run it...`) |
| 219 | |
| 220 | const availableWorker = this.findIdlingWorker() |
| 221 | if (!availableWorker) return |
| 222 | |
| 223 | const nextTask = this.taskQueue.shift() |
| 224 | if (!nextTask) { |
| 225 | this.debug(`Task queue is empty`) |
| 226 | this.eventSubject.next({ type: PoolEventType.taskQueueDrained }) |
| 227 | return |
| 228 | } |
| 229 | |
| 230 | this.run(availableWorker, nextTask) |
| 231 | } |
| 232 | |
| 233 | private taskCompletion(taskID: number) { |
| 234 | return new Promise<any>((resolve, reject) => { |
no test coverage detected