Ger*_*iva 4 asynchronous for-loop async-await dart for-await
我在 Dart 中有一个对象列表,我想对这些对象中的每一个执行异步操作。当所有异步操作完成后,我想执行最后一个操作。我目前正在使用如下代码执行此操作:
for (int i = 0; i < myObjectList.length; i++) {
await myAsynchronousOperation(myObjectList[i]);
}
doFinalOperation();
Run Code Online (Sandbox Code Playgroud)
虽然这在技术上可行,但我认为它效率低下,因为 for 循环将等待第一个异步操作完成后才开始第二个异步操作。因此,根据我的理解,我们最终会同步触发异步操作,这不可能是异步编程的意图。
因此,我的问题是,是否可以以某种方式立即触发所有异步操作,然后等到它们全部完成,然后最后执行最终操作。提前致谢!
用于Future.wait等待多个 in-flight Futures:
await Future.wait([
for (int i = 0; i < myObjectList.length; i++)
myAsynchronousOperation(myObjectList[i]),
]);
doFinalOperation();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1477 次 |
| 最近记录: |