Future< T>.microtask constructor
-
FutureOr<
T> computation( )
Создаёт future, содержащий результат асинхронного вызова computation с помощью scheduleMicrotask.
Если выполнение computation вызывает исключение, возвращённый future завершается с выброшенной ошибкой.
Если вызов computation возвращает Future, завершение созданного future будет ожидать завершения возвращённого future, а затем завершится с тем же результатом.
Если вызов computation возвращает значение, не являющееся future, возвращённый future завершается с этим значением.
Реализация
factory Future.microtask(FutureOr<T> computation()) {
_Future<T> result = new _Future<T>();
scheduleMicrotask(() {
try {
result._complete(computation());
} catch (e, s) {
_completeWithErrorCallback(result, e, s);
}
});
return result;
}
© 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/Future/Future.microtask.html