Merge branch 'master' of github.com:poolifier/poolifier into interleaved-weighted...
[poolifier.git] / src / pools / selection-strategies / worker-choice-strategy-context.ts
index 21c24f7c63799561f1b32e17ebda121b5a2464d3..43bcb3adee19a9aaedf072e526f0b59235e55b40 100644 (file)
@@ -2,6 +2,7 @@ import { DEFAULT_WORKER_CHOICE_STRATEGY_OPTIONS } from '../../utils'
 import type { IPool } from '../pool'
 import type { IWorker } from '../worker'
 import { FairShareWorkerChoiceStrategy } from './fair-share-worker-choice-strategy'
+import { InterleavedWeightedRoundRobinWorkerChoiceStrategy } from './interleaved-weighted-round-robin-worker-choice-strategy'
 import { LeastBusyWorkerChoiceStrategy } from './least-busy-worker-choice-strategy'
 import { LeastUsedWorkerChoiceStrategy } from './least-used-worker-choice-strategy'
 import { RoundRobinWorkerChoiceStrategy } from './round-robin-worker-choice-strategy'
@@ -83,6 +84,14 @@ export class WorkerChoiceStrategyContext<
         Data,
         Response
         >(pool, opts)
+      ],
+      [
+        WorkerChoiceStrategies.INTERLEAVED_WEIGHTED_ROUND_ROBIN,
+        new (InterleavedWeightedRoundRobinWorkerChoiceStrategy.bind(this))<
+        Worker,
+        Data,
+        Response
+        >(pool, opts)
       ]
     ])
   }