asynchronous - 如何在 Flutter 的异步任务中启动异步任务?

标签 asynchronous flutter dart async-await

有时您有一个异步任务,其中的子任务彼此异步,但有许多同步子任务。

例如,今天是清洁日:

Future<bool> clean(String day) async {
  bool allIsClean = false;
  if (day == 'sunday') {
    bool floorIsClean = await;  // Pick up items, vacuum flor, mop floor (in that order);
    bool dishesAreClean = await; // collect dishes, start dishwasher, empty dishwasher (in that order);

    allIsClean = floorIsClean && dishesAreClean;
  }
  return allIsClean;
}

清洁地板和洗碗可以异步完成。 当洗碗机运行时,我们可以吸尘地板等。 但是清洁地板必须按照准确的顺序(捡起、吸尘、拖把)进行,洗碗机也是如此。

如何在异步代码块中运行异步代码块,而不必为每个任务创建新的异步函数并从当前异步 block 中调用它们?

最佳答案

Future.wait([floorIsClean(), dishesAreClean()])

https://api.flutter.dev/flutter/dart-async/Future/wait.html

关于asynchronous - 如何在 Flutter 的异步任务中启动异步任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57481734/

相关文章:

flutter - 如何在 Flutter 中更改 DataColumn 的背景颜色?

javascript - 在 JS 中使用 RequireJS/AMD 可以获得多少速度?

java - Play 框架 - 平衡异步和非阻塞

c# - ServiceStack:异步/等待服务处理程序

firebase - Flutter Firebase要求一份文件

mongodb - 请求的内置库在 Dartium 上不可用

python - 如何在循环中等待方法?

flutter - WebView 太慢

flutter - 在Dart中管理异常

windows - 每次按下按钮时播放音频 - flutter