Back to questions
Junior — Middle
127
Можете объяснить, что из себя представляют корутины и как они работают в программировании?
Companies where asked
Pashapay
Answer from AI
sobes.tech AI
Корутины — это специальные функции, которые могут приостанавливать своё выполнение и позже возобновлять его, позволяя эффективно работать с асинхронными операциями и не блокировать основной поток.
В Flutter (Dart) корутины реализуются через async/await и Future. Когда функция помечена как async, она возвращает Future и может использовать await для ожидания результата асинхронной операции без блокировки.
Пример:
Future<void> fetchData() async {
print('Начинаем загрузку');
await Future.delayed(Duration(seconds: 2)); // имитация задержки
print('Данные загружены');
}
void main() {
fetchData();
print('Функция вызвана');
}
Вывод будет:
Начинаем загрузку
Функция вызвана
Данные загружены
Это показывает, что выполнение не блокируется во время ожидания, а корутина приостанавливается и возобновляется позже.