Biorąc pod uwagę ten kodCo jest wykorzystanie Scala Future.fallbackTo
val f1: Future[Int] = Future { 5 } //Future.failed(new Exception("sorry"))
val f2: Future[Int] = Future { 6 }
val result : Future[Int] = f1.fallbackTo {
println("Fall back to that F")
f2
}
wynik zawiera wynik f1. Jednak kod w bloku fallbackTo jest wykonywany niezależnie od tego, czy f1 ulegnie awarii, czy nie. Spodziewałem się, że funkcja fallbackTo będzie wykonana tylko w przypadku niepowodzenia f1.
Być może mój przykład jest zbyt prosty (lub po prostu zły), ale jaki jest pożytek z fallbackTo?
To wydaje się być związane z problemem: https: //issues.scala-lang. org/browse/SI-6913 –