課程
/后端開(kāi)發(fā)
/Java
/Java高并發(fā)之魂:synchronized深度解析
這個(gè)關(guān)鍵詞可以用到類上嗎
2019-02-19
源自:Java高并發(fā)之魂:synchronized深度解析 2-1
正在回答
當(dāng)然不行了,這個(gè)你打開(kāi)IDE試一下不就知道了嘛?
synchronized的兩種用法:
1.對(duì)象鎖
? ? 方法鎖(修飾方法,默認(rèn)鎖對(duì)象為this當(dāng)前實(shí)例對(duì)象)
? ? 同步代碼塊鎖(修飾代碼塊,自己指定鎖對(duì)象)
2.類鎖
? ? 修飾靜態(tài)的方法或指定鎖為Class對(duì)象(同步代碼塊使用Class對(duì)象做鎖)
悟空
舉報(bào)
從0開(kāi)始徹底學(xué)會(huì)高并發(fā)場(chǎng)景下不得不會(huì)的synchronized
1 回答用Suspend:Thread進(jìn)行調(diào)試
1 回答在分布式應(yīng)用中,synchronized是不是已經(jīng)無(wú)用武之地了
2 回答同步方法中,調(diào)用了非同步方法,此時(shí)對(duì)于非同步方法來(lái)說(shuō),是否是線程安全的,這個(gè)非同步方法是否也等于擁有了鎖??
1 回答那我是不是可以不使用創(chuàng)建thread對(duì)象時(shí)需要傳入的類的對(duì)象的class對(duì)象??梢噪S便哪個(gè)類的class對(duì)象都可以呢?因?yàn)樵趯W(xué)習(xí)對(duì)象鎖的視頻中老師創(chuàng)建的鎖對(duì)象是隨便的Object對(duì)象所以類鎖上應(yīng)該也可以隨便哪個(gè)類的clas對(duì)象。還是說(shuō)只能是實(shí)現(xiàn)Runnable接口的類的父類的對(duì)象啊?還有實(shí)現(xiàn)runnable接口的類對(duì)象不同類鎖會(huì)失效,這種是只有this修飾才會(huì) 這樣嗎?對(duì)象鎖中自己創(chuàng)建的鎖對(duì)象只有一個(gè),就算創(chuàng)建兩個(gè)線程的對(duì)象不同但是鎖對(duì)象只有一個(gè)還是只有一個(gè)可以持有鎖。也就是對(duì)象鎖不會(huì)失效。
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購(gòu)課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2019-02-19
當(dāng)然不行了,這個(gè)你打開(kāi)IDE試一下不就知道了嘛?
synchronized的兩種用法:
1.對(duì)象鎖
? ? 方法鎖(修飾方法,默認(rèn)鎖對(duì)象為this當(dāng)前實(shí)例對(duì)象)
? ? 同步代碼塊鎖(修飾代碼塊,自己指定鎖對(duì)象)
2.類鎖
? ? 修飾靜態(tài)的方法或指定鎖為Class對(duì)象(同步代碼塊使用Class對(duì)象做鎖)