Spec-Zone.ru › Dart 2

dart:async

Функция unawaited

  1. @Since("2.15")
void unawaited(
  1. Future<void>? future
)

Явно игнорирует будущее.

Не все будущие требуют ожидания. Dart linter имеет необязательный "lint необработанных будущих", который требует, чтобы потенциальные будущие (выражения со статическим типом Future или Future?) в асинхронных функциях обрабатывались каким-то образом. Если значение конкретного будущего не нужно ожидать, вы можете вызвать unawaited(...) с ним, что позволит избежать lint, просто потому что выражение больше не имеет тип Future. Использование unawaited не имеет другого эффекта. Вы должны использовать unawaited для передачи намерения намеренно не ожидать будущего.

Если будущее завершится с ошибкой, это, вероятно, ошибка, что вы его не ожидали. Эта ошибка всё равно произойдёт и будет считаться необработанной, если это же будущее не будет ожидать (или обрабатываться) где-то ещё. По этой причине unawaited следует использовать только для будущих, которые ожидаются завершиться со значением. Вы можете использовать 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.18.5/dart-async/unawaited.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API