第三种:用“双重检查加锁”,在getInstance中减少使用同步
public class Singleton {
private volatile static Singleton uniqueInstance = null;
public static void main(String[] args){
Singleton singleton = Singleton.getInstance();
}
public static Singleton getInstance(){
if (uniqueInstance == null){
synchronized (Singleton.class){
if (uniqueInstance == null){
uniqueInstance = new Singleton();
}
}
}
return uniqueInstance;
}
}
版权声明:本文为WalleIT原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。