Ограничение параллельных промисов
СложнаяРеализуйте функцию promiseLimit(tasks, limit), которая выполняет не более N промисов одновременно.
Требования:
- Принимает массив функций и лимит параллельных выполнений
- Выполняет максимум limit задач одновременно
- Когда задача завершается, запускается следующая
- Возвращает массив всех результатов в исходном порядке
- Если задача падает - продолжает выполнение остальных
Пример:
const tasks = urls.map(url => () => fetch(url));
const results = await promiseLimit(tasks, 3);
// Выполняет максимум 3 запроса одновременноJavaScript•UTF-8
Run your code to see results.
Click the Run button above
Mobile view - please use desktop for better experience