CNode

await async 中如何做到并行处理?

问答
Jjiewenli发布于10 年前最后回复10 年前3 回复8219 浏览0 收藏

例如:

function  getName(name){
  return Promise(function(){
    resolve(name + '123');
  });
}
(async ()=>{
var res = [];
for(const name of names){
   res[name] = await getName(name);
}
})();

查看回复

回复 (3)

Y
yuu2lee4#1·10 年前

可以await一个promise.all

M
magicdawn#2·10 年前

https://github.com/magicdawn/promise.map

pmap(array, async item => {
  // ...
}, concurrency)
J
JackTu#3·10 年前

function getName(name) { return new Promise(function(resolve, reject) { resolve(name + '123'); }); }

// jshint ignore: start (async function(names) { let res = await Promise.all(names.map(item => getName(item))); console.log(res); })(['a', 'b', 'c']); // jshint ignore: end

参与回复
登录后即可参与回复。登录