- public findFreeWorker (): Worker | false {
- for (const workerItem of this.workers) {
- if (workerItem.tasksUsage.running === 0) {
- // A worker is free, return the matching worker
- return workerItem.worker
- }
- }
- return false
+ public findFreeWorkerKey (): number | false {
+ const freeWorkerKey = this.workers.findIndex(workerItem => {
+ return workerItem.tasksUsage.running === 0
+ })
+ return freeWorkerKey !== -1 ? freeWorkerKey : false