午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術(shù)文章
文章詳情頁

Java。多線程環(huán)境中對象的序列化

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

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

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

然后,在序列化發(fā)生時(shí),您的應(yīng)用程序還需要使用其他鎖定來鎖定更新。@H_502_7@

如果您要序列化的狀態(tài)僅由一個(gè)對象的狀態(tài)和兩個(gè)字段組成,則鎖爭用和粒度應(yīng)該不成問題。但是,如果對象很復(fù)雜,那么鎖爭用就很成問題了,獲取鎖而又沒有死鎖風(fēng)險(xiǎn)的問題也很成問題。這種情況需要仔細(xì)設(shè)計(jì)。@H_502_7@解決方法

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

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執(zhí)行序列化是否會(huì)阻塞直到不再有線程運(yùn)行Counter?如果Counter同步不使用固有鎖,而是使用其他鎖怎么辦?
標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 另类一区二区三区 | 丁香六月在线 | 神马久久久久久 | 亚洲国产成人精品女人久久久 | 国产字幕在线观看 | 成人在线视频免费观看 | 欧美日韩国产不卡 | 国产精品视频自拍 | 在线伊人网 | 香蕉视频污污 | 日本男人天堂 | 色网在线 | 青青草97国产精品麻豆 | 特级西西444www高清大视频 | 999精品视频在线观看播放 | 久久久伊人网 | www.成人在线视频 | 日韩一区二区三区免费观看 | 1024黄色 | 亚洲欧美日韩久久 | 久久新视频| av网站观看 | 99re久久 | 亚洲视频在线观看网站 | 午夜视频黄色 | 欧美成人免费观看 | 999国产精品视频免费 | 亚洲图片欧美视频 | 一起草在线视频 | 日韩色爱 | 国产成人精品一区二 | 97精品一区 | 中文字幕 自拍偷拍 | 情侣在线视频 | 国产精品久久久精品 | 91免费国产在线 | 国产精品xxxx | 羞羞网站视频 | 成人性生交大片免费看 | 午夜视频免费观看 | 亚洲精品美女 |