采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
你好,atomic里的cas,底层实现时已经是到cpu指令级别了,通过cpu一条指令完成“先判断相等再更新”的操作,这里先判断再更新就保证了可见性,做到不会错误覆盖;同时,如果判断不相等会不执行,然后借助上层封装while循环取出最新的值,重新处理计算逻辑,继续执行cas操作,保证最终判断相等才执行,这样就保证了原子性。cas的机制保证了可以线程安全的更新。
没有回答问题。你看看问的是怎么实现的有序性和可见性
老师,您好,我个人觉得可见性和有序性,并不在cas中体现,更为明显的是在atomic.get()方法获取的value值(被volatile修饰的)体现
登录后可查看更多问答,登录/注册
构建完整并发与高并发知识体系,倍增高薪面试成功率!
1.7k 1
1.1k 18
1.2k 15
3.6k 12
1.2k 12