1
我讀這篇文章http://danielwestheide.com/blog/2013/01/16/the-neophytes-guide-to-scala-part-9-promises-and-futures-in-practice.html,我一直在尋找這個代碼:未來的宣言似乎獨立於承諾
object Government {
def redeemCampaignPledge(): Future[TaxCut] = {
val p = Promise[TaxCut]()
Future {
println("Starting the new legislative period.")
Thread.sleep(2000)
p.success(TaxCut(20))
println("We reduced the taxes! You must reelect us!!!!1111")
}
p.future
}
}
我見過這種類型的代碼幾次,我很困惑。因此,我們有這個Promise
:
val p = Promise[TaxCut]()
這Future
:
Future {
println("Starting the new legislative period.")
Thread.sleep(2000)
p.success(TaxCut(20))
println("We reduced the taxes! You must reelect us!!!!1111")
}
我沒有看到他們之間的任何任務,所以我不明白:他們是如何連接?
'Future {}'不是一個宏。它只是伴侶對象中的應用方法。 –
@Łukasz非常感謝,因爲某種原因,這是一個宏觀印象。 –