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