void main() {
//異步執(zhí)行的代碼
print('say Hello');
//異步執(zhí)行
Future.delayed(new Duration(seconds: 3),(){
print('chibaole');
});
print('play game');
}
執(zhí)行順序是:
1.say Hello
2.play game
3.chibaole // 等待3秒
- 異步執(zhí)行做成同步的效果 需要使用async和await關鍵字 【串行】
void main() async{
print('say Hello');
//異步執(zhí)行
await Future.delayed(new Duration(seconds: 3),(){
print('chibaole');
});
print('play game');
}
執(zhí)行順序是:
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 是所有都執(zhí)行完之后走的回調 results是上面三個異步的結果拼到results里面來
print('all over');
});
}
執(zhí)行順序是:
1: 001
2: 003
3: 002
4: all over
點個贊唄D砸纭B渌堋蜀涨!