美文网首页摄影
Flutter (十一)异步执行

Flutter (十一)异步执行

作者: MissBear灬 | 来源:发表于2020-01-16 13:34 被阅读0次
    • 异步执行
    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
    

    QQ:522608370

    点个赞呗😊!!!

    相关文章

      网友评论

        本文标题:Flutter (十一)异步执行

        本文链接:https://www.haomeiwen.com/subject/yqdwactx.html