av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Java。多線程環境中對象的序列化

瀏覽:104日期:2024-04-29 13:38:14
如何解決Java。多線程環境中對象的序列化?在這種情況下,序列化安全嗎?

否。正如@Tom Hawtin所說,您將需要執行自己的鎖定,以確保在序列化對象時不會更改對象。@H_502_7@它是如何工作的?也就是說,ObjectOutputStream是否將執行序列化塊,直到不再有任何線程在Counter上運行了?

ObjectOutputStream@H_403_16@不會在引擎蓋下鎖定。如有必要,由應用程序決定。@H_502_7@如果Counter的同步不使用固有鎖,而是使用其他鎖怎么辦?

然后,在序列化發生時,您的應用程序還需要使用其他鎖定來鎖定更新。@H_502_7@

如果您要序列化的狀態僅由一個對象的狀態和兩個字段組成,則鎖爭用和粒度應該不成問題。但是,如果對象很復雜,那么鎖爭用就很成問題了,獲取鎖而又沒有死鎖風險的問題也很成問題。這種情況需要仔細設計。@H_502_7@解決方法

我有一個對象,其內部可變狀態正在由一個或多個線程不斷更新。對象已同步,目標是從另一個線程定期保存其狀態(通過序列化):

public class Counter implements Serializable { private int dogCount; private int catCount; public synchronized void updateFromDogThread( int count ) { dogCount = count; } public synchronized void updateFromCatThread( int count ) { catCount = count; }}

問題:

在這種情況下,序列化安全嗎?它是如何工作的?也就是說,ObjectOutputStream執行序列化是否會阻塞直到不再有線程運行Counter?如果Counter同步不使用固有鎖,而是使用其他鎖怎么辦?
標簽: java
相關文章:
主站蜘蛛池模板: 久久久91精品国产一区二区三区 | 在线一级片 | 国产成人精品一区二 | 拍拍无遮挡人做人爱视频免费观看 | 精品产国自在拍 | 国产精品久久久亚洲 | 暖暖成人免费视频 | 国产一区| 欧美日韩国产精品一区二区 | 青青伊人久久 | 亚洲iv一区二区三区 | 麻豆一区二区三区 | 日韩一区二区三区视频在线播放 | 日韩第一区 | 国产精品一区二区久久 | 自拍偷拍第一页 | 国产婷婷在线视频 | 精品久久99| 一区二区精品视频 | 99精品视频免费在线观看 | 国产一区二区三区在线 | 中文字幕欧美在线观看 | 911网站大全在线观看 | 国产日韩一区二区 | 亚洲福利在线观看 | 天天操操 | 精品美女久久久久久免费 | 久久国产区 | 免费一级欧美在线观看视频 | 人人干人人看 | 在线免费观看视频黄 | 麻豆av一区二区三区久久 | 亚洲最大看片网站 | 天天操天天拍 | 久久亚洲一区二区三区四区 | 久久综合一区二区三区 | 欧美日韩亚洲一区 | 欧美成人精品一区二区三区 | 天天操操 | 国产一级视频在线播放 | 亚州春色|