CAS的缺点及解决

CAS的缺点有如ABA问题,自旋锁消耗问题、多变量共享一致性问题. 1.ABA: 问题描述:线程t1将它的值从A变为B,再从B变为A。同时有线程t2要将值从A变为C。但CAS检查的时候会发现没有改变,但是实质上它已经发生了改变 。可能会造成数据的缺失。 解决方法:CAS还是类似于乐观锁,同数据乐观锁的方式给它加一个版本号或者时间戳,如AtomicStampedReference 2.自旋消耗资源:
相关文章
相关标签/搜索