我想澄清这一点,因为文档对此不太清楚。
问题1:是Promise.all(iterable)
按顺序还是并行处理所有承诺?或者,更具体地说,它相当于运行像
p1.then(p2).then(p3).then(p4).then(p5)....
或者是一些其他类型的算法的所有p1
,p2
,p3
,p4
,p5
,等是被称为在同一时间(并行)和结果尽快返回所有的决心(或一个不合格品)?
问题2:如果Promise.all
并行运行,是否有方便的方法可以依次运行可迭代程序?
注意:我不想使用Q或Bluebird,而是要使用所有本机ES6规范。
您可以通过for循环来实现。
异步函数返回承诺
如果您编写以下代码,则会并行创建客户端
然后并行创建所有客户端。但是,如果要顺序创建客户端,则应使用for循环
然后按顺序创建所有客户端。
快乐的编码:)