【发布时间】:2021-03-15 21:19:27
【问题描述】:
我有一个 Dart 中的对象列表,我想对这些对象中的每一个执行异步操作。在所有异步操作都完成后,我想执行最后一个操作。我目前正在使用如下代码执行此操作:
for (int i = 0; i < myObjectList.length; i++) {
await myAsynchronousOperation(myObjectList[i]);
}
doFinalOperation();
虽然这在技术上可行,但我认为它效率低下,因为 for 循环将在启动第二个异步操作之前等待第一个异步操作完成。所以根据我的理解,我们最终会同步触发异步操作,这不是异步编程的意图。
因此,我的问题是是否有可能一次触发所有异步操作,然后等到它们全部完成,然后最后执行最终操作。提前致谢!
【问题讨论】:
标签: for-loop asynchronous dart async-await for-await