Функция showAsync
не выполняет ничего, требующего ожидания, поэтому она просто выполняется.Если вы переключитесь на следующее, другие функции будут печататься первыми:
showAsync() {
Future.delayed(Duration(seconds: 1), () {
print('Async Function Call!!');
});
}
Как отметил Гюнтер в комментариях: " В Dart 1.x асинхронные функции немедленно приостановили выполнение. В Dart 2вместо немедленной приостановки асинхронные функции выполняются синхронно до первого ожидания или возврата."(цитата из документов Dart).
Таким образом, если вы добавите вторую await showAsync()
, она не будет выполненадо вызова синхронизации.
Подробное описание доступно здесь: https://www.dartlang.org/tutorials/language/futures