相关疑难解决方法(0)

并行调用async/await函数

据我所知,在ES7/ES2016中,将多个await代码放在代码中将类似于.then()使用promise 进行链接,这意味着它们将一个接一个地执行,而不是在并行执行.所以,例如,我们有这个代码:

await someCall();
await anotherCall();
Run Code Online (Sandbox Code Playgroud)

我是否理解正确,anotherCall()只有在someCall()完成后才会被调用?并行调用它们的最优雅方式是什么?

我想在Node中使用它,所以也许有一个async库的解决方案?

编辑:我对这个问题中提供的解决方案不满意:由于异步生成器中的非并行等待承诺而减速,因为它使用生成器而我正在询问更一般的用例.

javascript asynchronous node.js ecmascript-6 babeljs

347
推荐指数
9
解决办法
14万
查看次数

等待Promise.all()和多个等待之间的任何区别?

之间有什么区别:

const [result1, result2] = await Promise.all([task1(), task2()]);
Run Code Online (Sandbox Code Playgroud)

const t1 = task1();
const t2 = task2();

const result1 = await t1;
const result2 = await t2;
Run Code Online (Sandbox Code Playgroud)

const [t1, t2] = [task1(), task2()];
const [result1, result2] = [await t1, await t2];
Run Code Online (Sandbox Code Playgroud)

javascript async-await

127
推荐指数
4
解决办法
7万
查看次数