我想了解以下的答案How to carry on executing Future sequence despite failure?。 (希望那不是向下表決值得,因爲我想了解這裏的代碼。)變換未來[T]給未來[嘗試[T]
我不明白mapValue如何改變未來[T]給未來[嘗試[T]
def mapValue[T](f: Future[T]): Future[Try[T]] = {
val prom = Promise[Try[T]]()
f onComplete prom.success
prom.future
}
行onComplete prom.success,它在做什麼。我的理解是prom.success必須接受Try [T]類型的對象,但在這裏它不會那樣做。也沒有任何賦予f將Future [T]轉換爲Future [Try [T]]的任務。 此外,anThen在未來應該是一個sideffect並且應該返回走進它的未來是相同的值,所以不知道如何轉變發生。
爲什麼包裝'Try'那裏,'Future'處理錯誤 – cchantep
看看原題鏈接瞭解情況 – konquestor
能否請你舉個例子?即 - 'mapValue(示例)'然後預期輸出? –