簡體   English   中英

序列化/反序列化Scala未來

[英]Serialize/De-serialize Scala future

是否可以將Scala Future序列化為byte[] ,然后再次將其反序列化?

如果可能,有人知道最佳方法嗎?

import concurrent.ExecutionContext.Implicits._
println(if ((concurrent.Future{}).isInstanceOf[Serializable]) "Yes" else "No")

版畫

No

使用scala中的Futures的標准實現不可能做到這一點。 Future顯然不會實現Serializable接口,也不應該進行序列化。

問題是,當未來還沒有結束時會發生什么。 Future之所以執行是因為它的任務是在ExecutionContext中安排的。 如果將這個Future序列化並在另一個JVM上反序列化,那么該任務將僅在第一個JVM上調度。 在第二個JVM上,未來永遠不會得到結果。

一旦准備就緒,序列化Future的內容可能更有意義。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM