DCL双检查锁机制实现的线程安全的单例模式

Posted Acode

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DCL双检查锁机制实现的线程安全的单例模式相关的知识,希望对你有一定的参考价值。

public class MyObject {
    
    private volatile static MyObject myObject;
    
    private MyObject(){}
    
    public static MyObject getInstance(){
        try {
            if(myObject != null){
                
            }else{
                Thread.sleep(3000);
                synchronized ( MyObject.class) {
                    if(myObject == null){
                        myObject = new MyObject();
                    }
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return myObject;
    }

}

 

以上是关于DCL双检查锁机制实现的线程安全的单例模式的主要内容,如果未能解决你的问题,请参考以下文章

单例模式双重检查(DCL)引发的多线程问题

双重检查锁实现单例模式的线程安全问题

DCL的单例一定是线程安全的吗

线程安全的单例模式(双重检查锁方式)

多线程 实现单例模式 ( 饿汉懒汉 ) 实现线程安全的单例模式 (双重效验锁)

多线程单例模式之延迟加载(懒汉模式)