Bog*_*lan 5 java thread-safety
所有其他原子对象都一样吗?解释AtomicInteger的问题更容易.由于超过1个线程正在访问对myInt的引用,因此对于此对象,一个线程是否可能看到已注册的缓存值,例如null,除非它也被声明为volatile?如果不是怎么来的?
ska*_*man 9
它不仅没有必要,而且实际上在语义上是错误的. AtomicReference在其自身内部保存"真实"引用,并使用自己的同步构造管理对它的访问.该JVM自身的同步结构(synchronized,volatile等),而不是使用.AtomicReference不应将对象本身视为易失性.如果有的话,考虑制作它final.
AtomicReference
synchronized
volatile
final
还要考虑这个问题 - 如果您只需要获取和设置操作,则volatile可以将其视为使用的替代方案AtomicReference.
归档时间:
14 年,5 月 前
查看次数:
1541 次
最近记录: