單例模式與多線程

程序代碼: 上面的就是典型的「餓漢模式」,就是急不可耐,一上來就初始化對象。那能不能使用的時候才實例化對象呢?也就是希望延遲加載,這就是所謂的「懶漢模式」。程序代碼如下: 在併發情況下,多個線程同時「抵達」 if判斷這塊,那麼勢必對象會被多次new。那麼「懶漢模式」下,如何保證併發呢?簡單來說,我們可以在getInstance方法上直接打上synchronized即可,如下: 要知道此時鎖住的是c
相關文章
相關標籤/搜索