日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

分析对象内部结构,并详解synchronized锁膨胀升级和降级的过程

發(fā)布時間:2025/3/19 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 分析对象内部结构,并详解synchronized锁膨胀升级和降级的过程 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1. 對象內(nèi)部結(jié)構(gòu)

一個對象內(nèi)部結(jié)構(gòu)由對象頭、實例成員以及對齊填充組成。其中對象頭由64位的Mark Word以及元數(shù)據(jù)指針和數(shù)組長度(只有數(shù)組對象才有)組成,其中元數(shù)據(jù)指針指向的是元空間中該對象的類.class。其中Mark Word包括一位偏向狀態(tài)和兩位鎖狀態(tài)標(biāo)志,如下圖。

?

2. 內(nèi)部結(jié)構(gòu)查看

2.1 jor-core插件下載

首先,我們?nèi)aven倉庫下載一個jol-core插件或者在pom.xml中配置一下依賴,我這邊使用的是IDEA2020版,所以下載了2020年的一個版本,如下圖。

?

?

2.2 對象內(nèi)部結(jié)構(gòu)分析

2.2.1 不是數(shù)組對象,而且有填充補(bǔ)齊位。填充補(bǔ)齊位為了湊成8個字節(jié),64位,方便64位系統(tǒng)尋址。

2.2.2 不是數(shù)組對象,且沒有填充補(bǔ)齊位

2.2.3 數(shù)組對象

?

3. 鎖升級或降級過程的鎖標(biāo)志位

3.1 偏向鎖的啟用和延時

3.1.1 偏向鎖是否啟用,可通過-XX:+UseBiasedLocking開啟偏向鎖以及-XX:-UseBiasedLocking關(guān)閉偏向鎖;偏向鎖啟動延時時間,可通過-XX:BiasedLockingStartupDealy變量設(shè)置時間,ms為單位。通過?java -XX:+PrintFlagsFinal -version | findstr "BiasedLocking" 可查看java關(guān)于偏向鎖的默認(rèn)設(shè)置,如下圖。

3.1.2 啟動偏向鎖,并設(shè)定偏向鎖啟動延遲時間為4s,如下圖。

3.2 偏向鎖升級、膨脹過程(本節(jié)操作都是在開啟偏向鎖,而且延時為0的場景下)

3.2.1 升級為偏向鎖,高位的三位鎖標(biāo)志是101(帶線程id);釋放鎖不會降級。

3.2.2 升級為輕量級鎖,高位的鎖標(biāo)志是兩位00。如果搶鎖的線程和對象頭內(nèi)偏向鎖記錄的線程不一致時,升級為輕量級鎖;

注意,其它博客提到的這么一句話:如果偏向鎖的那個偏向線程不存在,鎖不升級。經(jīng)過實踐,仍然還是升級為輕量級鎖了!!!

3.2.3 再次搶鎖時,直接從無鎖狀態(tài)變?yōu)檩p量級鎖,然后釋放鎖又降級為無鎖狀態(tài)

3.2.4 只要兩個線程同時爭搶,那么線程直接就升級為重量級鎖,不管原先是什么鎖狀態(tài);而且釋放鎖后,也不會降級。

這邊需要提一下Lock Record,每一個線程在搶鎖時,都會先在線程的棧幀中創(chuàng)建存儲Lock Record的空間(存儲共享對象的Mark Word的拷貝);然后每個線程搶鎖時都會嘗試將共享對象的Mark Word指向自己的Lock Record。最終,共享對象的Mark Word會存儲搶鎖成功線程的Lock Record地址;那些搶鎖失敗的線程會CAS自旋一定次數(shù),如果在指定次數(shù)內(nèi)成功了(默認(rèn)10次),那么就更改共享對象的Mark Word;如果指定次數(shù)后仍不成功,就將鎖升級為重量級鎖了。

?

附錄

最終出現(xiàn)了一個問題,系統(tǒng)開啟偏向鎖,兩個線程間隔100ms搶鎖后都是偏向鎖,第二個線程搶鎖沒有升級為輕量級鎖;而且兩次對象頭內(nèi)容都一樣,為什么???

當(dāng)兩個線程搶鎖的時間間隔改為20ms,鎖升級變化過程又正常了。

總結(jié)

以上是生活随笔為你收集整理的分析对象内部结构,并详解synchronized锁膨胀升级和降级的过程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 成人午夜免费网站 | 成年人看片网站 | 激情拍拍 | 国产明星换脸xxxx色视频 | 91污片| 日日插日日操 | 99性视频| 欧美一级成人 | 日韩亚洲国产精品 | 日韩三级不卡 | 久章草在线观看 | 在线91视频 | 四虎5151久久欧美毛片 | www婷婷av久久久影片 | 久久密av| 夜夜添无码一区二区三区 | 国产一级二级三级精品 | 免费成人深夜夜 | www.youjizz.com中国| 日本成人小视频 | 97人人爽人人爽人人爽人人爽 | 成人午夜视频一区二区播放 | 师生出轨h灌满了1v1 | 熟妇人妻一区二区三区四区 | 中文字幕在线免费观看视频 | 日韩欧美中文字幕一区二区 | 久久精品久久久久久久 | 日本一区二区三区在线播放 | 午夜视频a | 日本内谢少妇xxxxx少交 | 中日韩在线观看 | 最好看的日本字幕mv视频大全 | 午夜aaa | 久热99| 欧美经典一区二区三区 | 欧美一区二区三区久久综合 | 97操| 在线观看亚洲a | 神马久久久久久久久久 | 国产伦精品免费视频 | 日韩一二三区 | 婷婷综合在线观看 | 刘亦菲国产毛片bd | 在线爽| 久久久久五月天 | 一级全黄裸体免费视频 | 国产av无码专区亚洲av毛片搜 | 蜜色av | 小黄网站在线观看 | 嫩草影院永久入口 | 国产中文字幕第一页 | 国产一区欧美二区 | 正在播放国产精品 | 91成人在线| 国产日韩精品在线 | 日韩中文字幕精品视频 | 女人高潮潮呻吟喷水 | 亚洲男人天堂2018 | 老头av| 黄色一级片. | 精品伦精品一区二区三区视频 | 欧美日韩激情视频在线观看 | 国产乱子一区二区 | 日本呦呦 | 亚洲免费中文 | 少妇媚药按摩中文字幕 | 婷婷视频一区 | 亚洲精品免费在线观看视频 | 亚洲欧美日韩在线不卡 | 亚洲精品天堂网 | 免费无码国产精品 | 在线伊人网 | 久久久久久久久久一区 | 奇米影视久久久 | 久久精品国产亚洲av麻豆 | 青青色在线视频 | 亚洲欧美一二三区 | hd丰满圆润的女人hd | 精品国产一区一区二区三亚瑟 | 日本特级片 | 成人做爰66片免费看网站 | 日日夜夜精品视频免费 | 捆绑中国女人hd视频 | 亚洲不卡中文字幕无码 | 在线观看日韩中文字幕 | 色av导航| 看污网站 | 日韩午夜小视频 | 91社区视频 | 福利二区 | www.x日本 | 欧美一卡二卡在线观看 | 中文精品久久 | 给我看免费高清在线观看 | 外国av网站 | 打开每日更新在线观看 | 国产在线观看免费 | 亲嘴扒胸摸屁股免费视频日本网站 | 老师上课夹震蛋高潮了 |