将IgniteFuture转换为Scala Future
是否可以将转换为 我编写了以下代码:将IgniteFuture转换为Scala Future,scala,ignite,Scala,Ignite,是否可以将转换为 我编写了以下代码: class ScalaIgniteFuture[T](future: IgniteFuture[T]) { def toFuture: Future[T] = { val result = Promise[T] future .listen(f => { result.tryComplete(Try{ f.get() }) }) result.fu
class ScalaIgniteFuture[T](future: IgniteFuture[T]) {
def toFuture: Future[T] = {
val result = Promise[T]
future
.listen(f => {
result.tryComplete(Try{
f.get()
})
})
result.future
}
}
是否正确?是的,但是您可以使用
隐式
类模式来扩展API
import scala.util.Try
implicit class IgniteFutureUtils[T](igniteFuture: IgniteFuture[T]) {
def toScalaFuture = {
val promise = Promise[T]()
igniteFuture.listen { k =>
promise.tryComplete(Try(k.get))
}
promise.future
}
}
忘记
类
关键字