Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗dtSpAsInr 88 of 224 menu
◀ ▶

Введение в асинхронность в Dart

Обычный вызов функции выполняется до конца: пока считается сумма или собирается строка, следующая строка программы ждет. Когда шаг может занять время или зависит от внешнего ответа, удобнее запланировать продолжение позже, не крутя пустой цикл в ожидании.

В Dart для такого результата служит Future - обещание значения, которое появится, когда работа закончится. Функция с модификатором async сама возвращает Future, а оператор await приостанавливает текущую async-функцию, пока нужный Future не завершится.

В этом разделе все шаги идут через одну очередь событий: переключения потоков мы не разбираем. Пауза задается через Future.delayed, несколько независимых задач можно дождаться через Future.wait. Так код остается линейным, хотя внутри выполнение то идет, то откладывается.

Типы Future и Duration доступны в обычной программе без отдельного импорта. Дальше мы по шагам пройдем от объявления Future до обработки ошибок и практики на коротких примерах с print.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить