+
95
-

请问浏览器中Promise.all(promises)如何修改并发数?

请问浏览器中Promise.all(promises)如何修改并发数?

同时有100个promise,我想一次并发执行数为10怎么设置?

网友回复

+
15
-

参考代码

<script type="text/javascript">
 const fn = (t) => {
  // 用setTimeout模拟异步请求
  return new Promise((resolve, react) => {
      setTimeout(() => {
          console.log('任务完成', t, new Date());
          resolve({ t, date: new Date() });
      }, t * 1000);
  })
};

let arr = [1, 1, 1, 2, 2, 2, 3, 3, 3]

/**
 * arrs 请求数据源数组
 * limit 是每次并行发起多少个请求
 * handleFn 就是异步处理函数
*/
function limitQueueFn(arrs, limit, handleFn) {
  // 完成任务数
  let runningInde...

点击查看剩余70%

我知道答案,我要回答