【发布时间】:2020-06-12 01:11:39
【问题描述】:
我正在创建多个进行 http 调用的网络工作者。我必须限制网络工作者的数量,所以我试图等待一些工作者完成。
这是一个我认为可以使用 Promises 的示例:
anArray.map(async contact => {
await new Promise((res, rej) => {
const worker = new Worker('./http.worker', { type: 'module' });
worker.onmessage = () => {
res();
};
worker.postMessage(contact);
});
});
我以为这会等待每个承诺解决后再继续下一个项目……但事实并非如此。
我能做些什么来完成这项工作?或者......我还考虑过构建一组工作人员并运行一个递归循环来检查/等待一个可用......我愿意接受解决这个问题的一般建议。
【问题讨论】:
标签: promise async-await web-worker