Flutter (十一)异步执行

  • 异步执行
void main() {
  //异步执行的代码
  print('say Hello');
  //异步执行
  Future.delayed(new Duration(seconds: 3),(){
    print('chibaole');
  });
  print('play game');
}
执行顺序是:
1.say Hello
2.play game
3.chibaole //  等待3秒
  • 异步执行做成同步的效果 需要使用async和await关键字 【串行】
void main() async{
print('say Hello');
//异步执行
await Future.delayed(new Duration(seconds: 3),(){
  print('chibaole');
});
print('play game');
}
执行顺序是:
1.say Hello
2.chibaole  //  等待3秒
3.play game
  • 多个异步执行完之后再往下走 【并行】
void main() async{
Future.wait([
   Future.delayed(new Duration(seconds: 1),(){
     print('001');
   }),
   Future.delayed(new Duration(seconds: 3),(){
     print('002');
   }),
   Future.delayed(new Duration(seconds: 2),(){
     print('003');
   }),
 ]).then((List results){//then 是所有都执行完之后走的回调   results是上面三个异步的结果拼到results里面来
   print('all over');
 });
}
执行顺序是:
1: 001
2: 003
3: 002
4: all over

点个赞呗!!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容