設計模式之懶漢單例非執行緒安全

2021-08-01 23:10:34 字數 614 閱讀 2110

package design.singletonlazy.demo;

public

class main

};thread t2 = new thread()

};thread t3 = new thread()

};t1.start();

t2.start();

t3.start();

}}//如果相同則多啟動幾次試試

// t1執行緒獲取物件的hashcode: 475341210

// t2執行緒獲取物件的hashcode: 162086129

// t3執行緒獲取物件的hashcode: 162086129

package design.singletonlazy.demo;

//懶漢式單例-非執行緒安全

public

class singletonlazyunsafetyentity

return s;

}// 私有化構造方法,讓外部無法通過new建立

private

singletonlazyunsafetyentity()

}

執行緒安全的懶漢式單例設計模式

首先回顧一下單利設計模式 單利設計模式是通過某種方式使某個類只能建立乙個物件例項供外界使用。單利設計模式分為懶漢式和餓漢式 餓漢式是執行緒安全的 1 餓漢式單利設計模式 2class single 5public static single getinstance 8 餓漢式實現執行緒安全,可以通過...

單例模式 執行緒安全且懶漢模式

單例模式 懶漢式基礎上加入併發控制,保證多執行緒環境下,對外存在乙個物件 1.構造器私有化 避免外部new構造器 2.提供私有的靜態屬性 儲存物件的位址 3.提供公共的靜態方法 獲取屬性 public class doublecheckedlocking 3.提供公共的靜態方法 public sta...

單例模式與執行緒安全單例模式(懶漢 餓漢)

直接就可以在靜態區初始化instance,然後通過getinstance返回,這種就被稱為餓漢式單例類。也有些寫法是在getinstance中new instance然後返回,這種就被稱為懶漢式單例類,但這涉及到第一次getinstance的乙個判斷問題。單例大約有兩種實現方法 懶漢與餓漢。懶漢 故...