функция unawaited
- @Since("2.15")
-
Future<
void>? future
Явно игнорирует Future.
Не все Future нужно ожидать. В линтере Dart есть необязательная проверка «неожидаемые Future», которая требует, чтобы потенциальные Future (выражения со статическим типом Future или Future?) в асинхронных функциях обрабатывались как-либо. Если конкретное значение Future не нужно ожидать, можно вызвать для него unawaited(...) — это позволит избежать предупреждения линтера, поскольку выражение больше не будет иметь тип Future. Использование unawaited не имеет других последствий. Используйте unawaited, чтобы выразить намерение сознательно не дожидаться завершения Future.
Если Future завершается с ошибкой, вероятно, было ошибкой не ожидать его. Эта ошибка всё равно возникнет и будет считаться необработанной, если тот же Future не ожидается (или не обрабатывается иным образом) где-либо ещё. Поэтому unawaited следует использовать только для Future, которые, как ожидается, завершатся со значением. Если вы также не хотите получать сведения об ошибках этого Future, можно использовать FutureExtensions.ignore.
Реализация
@Since("2.15")
void unawaited(Future<void>? future) {}
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-async/unawaited.html