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秒后的事件.....返回结果