我们知道async和await可以更简洁有效地描述promise的异步处理,但是我们也可以使用async和await的并行处理,本篇文章我们就来看看async和await中的并行处理。

我们先来看一下使用Promise.all()的并行处理
我们来看个具体的示例
代码如下
立即学习“Java免费学习笔记(深入)”;
Promise.all([
myPromise(10),
myPromise(100),
myPromise(1000)
]).then(function(data) {
console.log(data);
})在此示例中,myPromise()的三个参数同时执行。
最后,then将执行结果作为数组输出。
下面我们就来看看如何使用async和await实现并行处理?
在现实生活中的购物过程,购物者需要先到商场,找到指定的产品柜台下,查看产品实体以及标价信息,如果产品合适,就将该产品放到购物车中,到收款处付款结算。电子商务网站通过虚拟网页的形式在计算机上摸拟了整个过程,首先电子商务设计人员将产品信息分类显示在网页上,用户查看网页上的产品信息,当用户看到了中意的产品后,可以将该产品添加到购物车,最后使用网上支付工具进行结算,而货物将由公司通过快递等方式发送给购物者
我们用async和await执行相同的过程
代码如下
立即学习“Java免费学习笔记(深入)”;
async function myAsyncAll() {
var r1 = myPromise(10);
var r2 = myPromise(100);
var r3 = myPromise(1000);
console.log(await r1, await r2, await r3);
}
myAsyncAll();上述代码首先,调用需要执行的所有Promise进程并将其存储在变量中。
通过在此之后分配await,我们可以并行移动所有Promise进程并获得结果。
本篇文章到这里就全部结束了,更多精彩内容大家可以关注php中文网的相关栏目教程!!!










