23.Future其他API

2020-06-07  本文已影响0人  凯司机

异步和非异步方法的执行顺序

main(List<String> args) {

  // 第一种写法——使用这个方法: 虽然没有耗时操作,但是也会被放到最后与耗时操作进行排序再依此进行——3

  Future(() {

    return "KSJ1";

    // sleep(Duration(seconds: 2);

  }).then((res){

    print(res);

  });

  // 第二种写法——1

  Future.value("KSJ2").then((res){

    print(res);

  });

  // 直接抛出错误信息——2

  Future.error("错误信息").catchError((error){

    print(error);

  });

  // 延时执行任务操作——4

  Future.delayed(Duration(seconds: 3)).then((res){

    print("3秒后的事件");

    return "3秒后的事件.....返回结果";

  }).then((res){

    print(res);

  });

}

// ⚠️:执行的顺序

KSJ2

错误信息

KSJ1

3秒后的事件

3秒后的事件.....返回结果

上一篇 下一篇

猜你喜欢

热点阅读