@pmun/utils / parallel
Function: parallel()
ts
function parallel<T>(tasks, limit): Promise<T[]>;并发执行多个 Promise,并限制同时执行的数量
Type Parameters
T
T
Parameters
tasks
() => Promise<T>[]
Promise 工厂函数数组
limit
number = 5
最大并发数,默认为 5
Returns
Promise<T[]>
返回所有 Promise 的结果数组
Example
ts
const urls = ['/api/1', '/api/2', '/api/3', '/api/4', '/api/5']
const tasks = urls.map(url => () => fetch(url).then(r => r.json()))
// 最多同时执行 2 个请求
const results = await parallel(tasks, 2)
console.log(results)