- 博客(1)
- 收藏
- 关注
转载 说一说如何正确地写出单例模式
今天就跟大家说一说如何正确地写出单例模式 有些人认为使用 volatile 的原因是可见性,也就是可以保证线程在本地不会存有 instance 的副本,每次都是去主内存中读取。但其实是不对的。使用 volatile 的主要原因是其另一个特性:禁止指令重排序优化。也就是说,在 volatile 变量的赋值操作后面会有一个内存屏障(生成的汇编代码上),读操作不会被重排序到内存屏障之前。比如上面的例子
2016-08-24 15:15:27 406
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人