feat: add less busy worker choice strategy
[poolifier.git] / src / pools / selection-strategies / less-used-worker-choice-strategy.ts
index f220b2c8aba228a6d6f28bae86d06f791d7c8b83..61c8fb20643319deb4f64b1e9a7054dc4ea13719 100644 (file)
@@ -21,8 +21,7 @@ export class LessUsedWorkerChoiceStrategy<
   /** {@inheritDoc} */
   public choose (): Worker {
     let minNumberOfTasks = Infinity
-    // A worker is always found because it picks the one with fewer tasks
-    let lessRecentlyUsedWorker!: Worker
+    let lessUsedWorker!: Worker
     for (const value of this.pool.workers.values()) {
       const worker = value.worker
       const tasksUsage = this.pool.getWorkerTasksUsage(worker)
@@ -32,9 +31,9 @@ export class LessUsedWorkerChoiceStrategy<
         return worker
       } else if (workerTasks < minNumberOfTasks) {
         minNumberOfTasks = workerTasks
-        lessRecentlyUsedWorker = worker
+        lessUsedWorker = worker
       }
     }
-    return lessRecentlyUsedWorker
+    return lessUsedWorker
   }
 }