課程
/后端開發(fā)
/Java
/模式的秘密---單例模式
采用synchronized? 關(guān)鍵詞修飾與不采用synchronized? 關(guān)鍵詞修飾有什么區(qū)別?
2016-07-29
源自:模式的秘密---單例模式 3-1
正在回答
thread 1和thead2 對(duì)于 條件判斷 ,有可能都判定if(instance==null)為真!,這樣就會(huì)生成兩個(gè)對(duì)象
Cphantom 說的準(zhǔn)確!
因?yàn)檫@個(gè)類在加載的時(shí)候就實(shí)例化了,就算thread1和thread2同時(shí)獲取它,取到的是類加載時(shí)實(shí)例化的那個(gè)變量的值,所以說是線程安全的;而懶漢式線程不安全,因?yàn)橛锌赡躷hread1在if(instance==null)判斷為真時(shí)進(jìn)入了if體里但又沒開始實(shí)例化,而這時(shí)thread2也進(jìn)來了,最終就會(huì)有2個(gè)實(shí)例了。
慕粉16012980
0x0wh04m1 回復(fù) 慕粉16012980
sd1700092
慕后端244733 回復(fù) sd1700092
舉報(bào)
單例模式是在Java中最重要模式之一,讓我們揭開單例模式神秘面紗
2 回答懶漢模式線程安全問題
2 回答單例模式懶漢式和餓漢式,應(yīng)用的場(chǎng)景有什么不同呢?
1 回答單例模式之餓漢模式不能將構(gòu)造方法私有化
1 回答關(guān)于懶漢模式
1 回答線程不安全
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)
2016-11-03
thread 1和thead2 對(duì)于 條件判斷 ,有可能都判定if(instance==null)為真!,這樣就會(huì)生成兩個(gè)對(duì)象
2016-11-03
Cphantom 說的準(zhǔn)確!
2016-08-19
因?yàn)檫@個(gè)類在加載的時(shí)候就實(shí)例化了,就算thread1和thread2同時(shí)獲取它,取到的是類加載時(shí)實(shí)例化的那個(gè)變量的值,所以說是線程安全的;而懶漢式線程不安全,因?yàn)橛锌赡躷hread1在if(instance==null)判斷為真時(shí)進(jìn)入了if體里但又沒開始實(shí)例化,而這時(shí)thread2也進(jìn)來了,最終就會(huì)有2個(gè)實(shí)例了。