多线程下单例模式示例(synchronized)

Posted mawenzhu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多线程下单例模式示例(synchronized)相关的知识,希望对你有一定的参考价值。

class SingleDemo {

    public static SingleDemo instance = null;

    private SingleDemo() {
        System.out.println(Thread.currentThread().getName() + "	 我是SingleDemo构造方法");
    }

    public static synchronized SingleDemo getInstance() {
        if (instance == null) {
            instance = new SingleDemo();
        }
        return instance;
    }
}


public class Main {

    public static void main(String[] args) {
        for (int i = 0; i < 5; i++) {
            new Thread(() -> {
                SingleDemo.getInstance();
            }, String.valueOf(i)).start();
        }
    }
}

 

以上是关于多线程下单例模式示例(synchronized)的主要内容,如果未能解决你的问题,请参考以下文章

多线程下单例

多线程下单例模式:懒加载(延迟加载)和即时加载

多线程下的单例模式详解

彻头彻尾理解单例模式与多线程

彻头彻尾理解单例模式与多线程

多线程与单例模式