蜜桃无码视频,国产精品 17c,5g-天天看天天奭免费入口,乱亲女H秽乱长久久久

歡迎來到 常識詞典網(wǎng) , 一個專業(yè)的常識知識學習網(wǎng)站!

[ Ctrl + D 鍵 ]收藏本站

您所在的位置:首頁 > 教育學習 > 為什么

為什么

java sync-ronized同步方法調(diào)用另一個同步方法,鎖機制問題

分類: 為什么 常識詞典 編輯 : 常識 發(fā)布 : 08-25

閱讀 :346

java sync-ronized同步方法調(diào)用另一個同步方法,鎖機制問題public sync-ronized void met-odA(int a, int b);public sync-ronized void met-odB(int a){ met-odA(a, 0);}B方法可以執(zhí)行吧……就是說B方法獲得鎖之后,調(diào)用的A方法也可以獲得該鎖?8 個答案

答案 1:

要明白兩個問題,1.鎖的對象是誰,2.誰持有了鎖。假設(shè)方法A和B是在同一個類Test中的兩個方法。Test t=new Test();t.met-odB();這個時候,met-odB方法被調(diào)用時,因為加了sync-ronized ,需要先獲得一個鎖,這個鎖的對象應該是t,也就是當前的這個Test類的實例,而獲得鎖的東西是線程,也就是說當前線程拿到了t的鎖(而不是你說的B方法獲得鎖),這個時候B方法內(nèi)調(diào)用met-odA,因為A也加了sync-ronized,也需要獲得一個鎖,因為A和B都是Test類中的方法,所以當前線程要獲得的鎖的對象也是t。由于當前線程在執(zhí)行B方法時已經(jīng)持有了t對象的鎖,因此這時候調(diào)用met-odA是沒有任何影響的,相當于方法A上沒有加sync-ronized。另一種情況:假設(shè)現(xiàn)在有兩個Test類Test t1=new Test();Test t2=new Test();t1.met-odB();//此時當前線程持有了t1對象的鎖t2.met-odB();//此時當前線程也持有了t2對象的鎖當前線程持有了兩把鎖,鎖的對象分別是兩個不同的Test類的實例t1和t2,互相沒有影響。再一種情況:假設(shè)在多線程環(huán)境下,兩個線程都可以訪問Test t=new Test();此時假設(shè)t-read1里調(diào)用t.met-odB();同時t-read2里調(diào)用t.met-odB()這時假設(shè)t-read1先搶到t對象的鎖,那么t-read2需要等待t-read1釋放t對象的鎖才可以執(zhí)行B方法。結(jié)果像這樣:t-read1獲得t的鎖--t-read1執(zhí)行met-odB--t-read1執(zhí)行met-odA--釋放t的鎖---t-read2獲得t的鎖--t-read2執(zhí)行met-odB--t-read2執(zhí)行met-odA--釋放t的鎖。sync-ronized還有很多種使用方法,但只有明白是那條線程獲得哪個對象的鎖,就很容易明白了。

答案 2:

加在非static方法上的sync-ronized方法是和sync-ronized(t-is)塊等價的,均為對象鎖,即對t-is加鎖。獲得當前對象鎖的線程,可以繼續(xù)獲得當前對象鎖,JVM負責-對象被加鎖的次數(shù)。線程運行B方法,此時如果t-is鎖可以用,線程獲得該鎖,線程給對象加鎖,計數(shù)器變成1,然后B方法調(diào)用A方法,由于是對同一個對象同一個線程,線程可以繼續(xù)獲得鎖,計數(shù)器變?yōu)?,表示t-is被加鎖2次。A方法完畢后,線程釋放鎖,計數(shù)器變?yōu)?,此時對象鎖對其他線程依然是不可獲得的。B方法完畢后,線程繼續(xù)釋放鎖,此時計數(shù)器變?yōu)?,表示鎖被完全釋放,其他線程可以獲得對象鎖。

答案 3:

可以,一個線程對同一個對象的鎖可以反復獲取。這種同步鎖稱為可重入的鎖。

答案 4:

sync-ronized 鎖機制存在重入的特性,就是可以重復獲取同一個對象的鎖

答案 5:

met-odA試圖在上面獲得鎖的對象如果就是met-odB所鎖住的那個對象,那就可以吧

答案 6:

寫在方法上的sync-ronized,鎖的對象是t-is進入一次,計數(shù)器+1,離開,計數(shù)器-1

答案 7:

鎖的基本機制 @beralee將的很清楚;@孫立偉講了反復獲取鎖。反復獲取鎖是有意義的。@鄧梁 同學補充了較詳細的正常流程的解除嵌套鎖的計數(shù)器實現(xiàn)。我稍微補充一句:與之相對的問題還有,方法拋出異常時,線程足夠聰明以釋放所有反復獲取到到的鎖。詳情可以參考官方的虛擬機規(guī)范。

答案 8:

只要明白兩個問題就好了。1:誰獲取了鎖。2:獲取了誰的鎖。

下一篇:武漢給大家的文化形象是怎樣的? 下一篇 【方向鍵 ( → )下一篇】

上一篇:有自己的上半身照片,如何制作自己的漫畫頭像? 上一篇 【方向鍵 ( ← )上一篇】

香蕉久久久久久久AV网站| 天美麻豆91| 高清日韩中文一区二区| 亚洲人与牲动交xxxxbbbb| 亚洲日韩欧美三区| 国内精品一区二区三区在线观看| 东京热中文字幕a∨无码| 中文字幕一区在线直播| 激情人妻一区| 午夜福利影院私人爽爽免费| 国产a级毛片一级毛片| 一本色道久久综合亚洲精品不| 日韩永久精品| 99re在线视频观看| 中日AV一区二区三区| 色噜噜综合色在线| 国产中出视频无码流出| 国产午夜视频在线观看| 成人午夜在线视频| gogo高清大胆一区| 亚洲国内久久久久久久| 无码人妻精品一区二区三区不卡| 亚洲精品在线观看蜜臀| 无码国产精品一区二区久久| 久久五月婷| 97人妻资源总站| 日韩人妻高清精品专区| 国产另类在线欧美日韩| 亚洲另类自拍丝袜第1页| 国产中文字幕三区| 国产成人无码18禁午夜福利P| 无码人妻一区| 中文字幕无码久久久久久| 久久夜夜亚洲国产| 中文字幕久精品视频在线| 久久影院黄| 久久人妻无码中文字幕第一| 国产精品国产三级国产潘金莲| 亚洲精品丁香| 全部免费毛片在线播放| 精品国产免费无码专区不卡|