我有Scala Futures的问题 . 我有一个带有两个参数的函数:x:Future [Int]和y:Future [Int] .
该函数应该返回一个完成的未来:
如果x成功完成,
-
x的值,
如果x失败并且y成功完成,则 -
y的值,
-
如果x失败且y失败则失败的异常 .
我似乎无法弄清楚如何做到这一点 .
目前的代码:
def myFunction(x: Future[Int], y: Future[Int]): Future[Int] = {
x.onSuccess {
case result => return Future(result)
}
x.onFailure {
case e =>
y.onSuccess {
case res => return Future(res)
}
y.onFailure {
case f => throw f
}
}
}
1 回答
只是: