1 回答
已采纳
磁单极
TA贡献22条经验 获得超19个赞
首先,饿汉式单例模式是线程安全的,但是对于懒汉式单例模式而言就是非线程安全的,那么如何实现线程安全呢?
可能大家都会想到加锁,利用sychronized关键字同步方法,这样就可以实现线程安全。确实这样是可以实现线程安全,但同时会导致效率问题,在java中还有一种方式叫双检查同步啊,首先是利用volatile来实现共享变量的可见性,然后在给变量赋值的时候,再重新检查一下,是否有其他线程改变了这个单例对象。如果没有,则生成单例对象。
添加回答
举报
0/150
提交
取消