Java并发--安全发布对象

单例模式

懒汉模式:多线程非线程安全,在多线程中,可能会产生多个对象

饿汉模式:线程安全。

类加载的时候初始化,不推荐在构造函数需要做耗时操作的时候使用,因为可能导致类加载缓慢,而且可能初始化后并没有使用

 

懒汉模式+synchronized修饰方法

这可以保证线程安全,但不推荐这种写法,因为同一时刻只能有一个线程来访问,会造成性能问题

 

双重检验锁:不是线程安全的,因为指令重排

双重检验锁+volatile:限制指令重排,线程安全

 

枚举

原文地址:https://www.cnblogs.com/panlei3707/p/11010450.html