2017-10-11 74 views
1

我在我的项目中有一个返回Scala Future的Akka层,接收Future的部分是Java风格。将Scala Future变成CompletableFuture

团队中的人不知道Scala,他们宁愿使用CompletableFuture,因为他们知道Java 8 API要好得多。

有没有什么好的方法可以将Scala future转换成CompletableFuture

显然是以非阻塞的方式。

问候。

回答

3

使用scala-java8-compat库:

import java.util.concurrent.CompletableFuture 
import scala.concurrent.Future 
import scala.compat.java8.FutureConverters._ 

val scalaFuture = Future.apply("Hello") 
val javaFuture: CompletableFuture[String] = scalaFuture.toJava.toCompletableFuture 
+1

谢谢,我会看看,I'm知道他们在toCompletableFuture做什么,如果他们不只是让一些讨厌的堵塞CompletableFuture.from(等待(未来, X持续时间))或类似的东西:) – paul

+1

我没有很好地接受足够的关于期货的想法,但请务必阅读除'toCompletableFuture'之外的'toJava'文档 – Tanjin

+0

任何想法如何从Java世界使用它? – paul

相关问题