У меня есть несколько вложенных фьючерсов в Scala. Мне интересно, могу ли я использовать один recover
, чтобы поймать все бросаемые предметы, или у каждого Future должно быть свое собственное восстановление? Представьте, что метод1 и метод2 производят как Future[Option[A]]
,
method1.flatMap {
case Some(object1) =>
method2(object1).map {
case Some(object2) => ...
case None => ...
}.recover { case t => .... } <--- DO I NEED THIS?
case None => ....
}.recover { case t => ... } <--- OR THIS ALONE IS ENOUGH?
recover
. Поместив один дляmethod
1 послеflatMap
, если этотFuture
выйдет из строя, он не войдет вflatMap
. Если вы поместитеrecover
передflatMap
, то он войдет в него. Просто еще одна вещь, чтобы взвесить. - person cmbaxter   schedule 28.08.2015