产卵隔离在循环中,并在Dart中并行处理


for(int i=0;i<2;i++){
..............preprocessing(pr)...........
..... = await someFunc(someData[i]) (this line spawns off new Isolate)
..............postprocessing(po)..........
}

我正在dart中编写这种函数,我希望得到这个订单pr0->someFunc(data[0](-->pr1->someFunc(数据[1](-->后处理(隔离首先完成(。但我知道我不能用for循环得到同样的效果。它给了我订单pr0->someFunc(data[0](-->pr1->someFunc(数据[1](-->po0->po1。我应该如何执行才能获得上述效果。

提前谢谢。

您可以尝试使用Future.wait(https://api.dart.dev/stable/2.16.1/dart-async/Future/wait.html)。

final results = await Future.wait([
for (int i = 0; i < 2; i++) someFunc(someData[i]),
]);

最新更新