Sobes.tech
Back to questions
Junior — Middle
78

Каким образом можно реализовать выполнение небольших задач в рамках асинхронной обработки?

Companies where asked
ЯндексЯндекс

Answer from AI

sobes.tech AI

В Flutter для выполнения небольших задач асинхронно обычно используются Future и async/await. Это позволяет не блокировать основной поток UI и выполнять операции, например, загрузку данных или вычисления, в фоне.

Пример асинхронной функции, которая выполняет задачу с задержкой:

Future<String> fetchData() async {
  await Future.delayed(Duration(seconds: 2)); // имитация долгой операции
  return 'Данные загружены';
}

void main() async {
  print('Начинаем загрузку');
  String result = await fetchData();
  print(result);
}

Если нужно выполнять несколько задач параллельно, можно использовать Future.wait:

Future<void> performTasks() async {
  var results = await Future.wait([
    task1(),
    task2(),
  ]);
  print(results);
}

Для более сложной асинхронной обработки можно использовать Stream или изоляторы (Isolate), но для небольших задач обычно достаточно Future и async/await. Это позволяет писать понятный и эффективный асинхронный код.