Java中线程安全的单例模式


第三种:用“双重检查加锁”,在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版权协议,转载请附上原文出处链接和本声明。