javascript
advanced
Risolta
Termina il 2026-11-24
Promise pool with a concurrency limit
Write runPool(tasks, limit) where tasks is an array of functions that each return a Promise. It runs the tasks with at most limit running at the same time and resolves to an array of results in the original order.
- Start a new task as soon as one finishes; don't wait for a whole batch.
- If any task rejects,
runPoolrejects with that error (tasks already running may finish). runPool([], 3)resolves to[].
Acceptance criteria
- No libraries; don't use
Promise.allon all tasks at once (that ignores the limit). - The tests use real timers; run the code and wait a moment for
All tests passed.
Risolta finora da 0 persone.
EditorCtrl + Enter
Quando i test mostrano "All tests passed", la sfida viene segnata come risolta in questo browser.
Invia la tua soluzione per la revisione