请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

正在回答 回答被采纳积分+3

1回答

Jimin 2019-07-03 23:14:28

你好,atomic里的cas,底层实现时已经是到cpu指令级别了,通过cpu一条指令完成“先判断相等再更新”的操作,这里先判断再更新就保证了可见性,做到不会错误覆盖;同时,如果判断不相等会不执行,然后借助上层封装while循环取出最新的值,重新处理计算逻辑,继续执行cas操作,保证最终判断相等才执行,这样就保证了原子性。cas的机制保证了可以线程安全的更新。

0 回复 有任何疑惑可以回复我~
  • 海天s #1
    没有回答问题。你看看问的是怎么实现的有序性和可见性
    回复 有任何疑惑可以回复我~ 2019-11-24 19:14:16
  • 老师,您好,我个人觉得可见性和有序性,并不在cas中体现,更为明显的是在atomic.get()方法获取的value值(被volatile修饰的)体现
    回复 有任何疑惑可以回复我~ 2020-11-04 17:35:12
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信