java完整的单例代码(切记)


// 这里要加 volatile 防止指令重排
private static volatile A instance = null;

private A() {

}

public static AgetInstance() {
if (instance == null) {// 只有为null,才进入同步锁,减少多线程等待
synchronized (A.class) { // 这里要加 锁,防止多线程
if (instance == null) {// 这里要加判断,防止出现多个实例
instance = new A();
}
}
}
return instance;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章