加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

多线程 – 等待Scala中任何给定的期货?

发布时间:2020-12-15 02:52:22 所属栏目:Java 来源:网络整理
导读:假设我需要在 Scala中执行一些并行任务.每个任务都执行一些阻塞调用(例如Process.waitFor).现在我想等到任何任务完成. 据我所知,我应该使用Scala Future来包装任务. Scala中是否有任何API等待任何给定的期货结束? 解决方法 有这样做的内置方法: Future.fir
假设我需要在 Scala中执行一些并行任务.每个任务都执行一些阻塞调用(例如Process.waitFor).现在我想等到任何任务完成.

据我所知,我应该使用Scala Future来包装任务. Scala中是否有任何API等待任何给定的期货结束?

解决方法

有这样做的内置方法:
Future.firstCompletedOf(yourFutures)

from the doc:

Returns a Future to the result of the first future in the list that is
completed.

请注意,这不会打断所有其他期货,因此如果需要,您可以自行取消它们.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读