java - AtomicReference.compareAndSet(old,new) 是否保证 old.field 没有改变?
问题描述
是否AtomicReference.compareAndSet(old,new)
保证
old.field
没有改变吗?- 或者它只是保证
old
没有重新分配给新对象?
如果 2 为真,是否意味着AtomicReference
仅对不可变对象有用String
?(因为在更改的可变性的情况old
下成功old.field
丢失) compareAndSet
解决方案
AtomicReference
仅检查引用相等性,不检查字段的更改。
因此,它主要只对不可变类型有用。
推荐阅读
- r - ggplot 填充 SpatialPolygonsDataFrame
- typo3 - 错字3更新后 - 文字不环绕图像,图像不显示在列中
- java - google guice 在 android 项目中不起作用
- angular - Angular2 +单选按钮不可点击
- reactjs - 分组特定子组件 React
- mysql - MySQL - SELECT 和 GROUP BY 的问题
- sql-server - 将数据从临时表导入永久表时出现动态 SQL 错误
- bazel - bazel 缺少 stddef.h 和其他 Ubuntu 18.04 的依赖项声明
- angular - Angular 7 CLI ng 生成组件错误:'无法读取未定义的属性'sourceRoot'
- matlab - 快速拆分字符串