1

This is my code.I looked at the source code of Future.delayed & Future. Future & Future.delayed both execute Time.run. Future Duration is Duration.zero,But Future.delayed(Duration(microseconds:n(ps:n<1000)),fun) is faster, And what's interesting about this is that it reverses when n >= 1000 .

void event(){
  print("Future delayed start");
  Future.delayed(Duration(microseconds:999), (){
    print("Future delayed end");
  }).then((value) => {
    print("Future.delayed.then")
  }).whenComplete(() => {
    print("Future.delayed.whenComplete")
  });

  print("Future start");
  Future((){
    print("Future end");
  }).then((value) => {
    print("Future.then")
  }).whenComplete(() => {
    print("Future.whenComplete")
  });
}

This is output.

flutter: Future delayed start
flutter: Future start
flutter: Future delayed end
flutter: Future.delayed.then
flutter: Future.delayed.whenComplete
flutter: Future end
flutter: Future.then
flutter: Future.whenComplete

Thanks in advance.

VillainLin
  • 251
  • 1
  • 2
  • 7

0 Answers0