如何取消Future.wait(在dart中)?

问题描述 投票:0回答:1

我有两个异步运行的 Future 函数:

List<Future<bool>> jobs = [];
jobs.add(asyncFunction1());
jobs.add(asyncFunction2());
jobsResults = await Future.wait(jobs);

如果 asyncFunction1 返回 false - 我想完成当前过程(不等待 asyncFunction2)。 怎么办?

flutter dart future dart-async
1个回答
0
投票

没有标准方法可以做到这一点,但“hacky”方法是让函数在 false 时抛出错误。然后您可以使用

eagerError=True
(Future.wait 的参数)。这将在收到第一个错误时立即返回。

文档:https://api.dart.dev/stable/3.3.1/dart-async/Future/wait.html

© www.soinside.com 2019 - 2024. All rights reserved.