main -> microtask -> event
深入了解Flutter的isolate(1) ---- 事件循环(event loop)及代码运行顺序
...
@override
void initState() {
super.initState();
testScheduleMicrotatsk();
}
void testScheduleMicrotatsk() {
scheduleMicrotask(() => print('Mission_1'));
//注释1
Future.delayed(Duration(seconds: 1), () => print('Mission_2'));
//注释2
Future(() => print('Mission_3')).then((_) {
print('Mission_4');
scheduleMicrotask(() => print('Mission_5'));
}).then((_) => print('Mission_6'));
//注释3
Future(() => print('Mission_7')).then((_) => Future(() => print('Mission_8'))).then((_) => print('Mission_9'));
//注释4
Future(() => print('Mission_10'));
scheduleMicrotask(() => print('Mission_11'));
print('Mission_12');
}
flutter: Mission_12
flutter: Mission_1
flutter: Mission_11
flutter: Mission_3
flutter: Mission_4
flutter: Mission_6
flutter: Mission_5
flutter: Mission_7
flutter: Mission_10
flutter: Mission_8
flutter: Mission_9
flutter: Mission_2