- 博客(1)
- 收藏
- 关注
原创 复刻CAS中的ABA问题
复刻CAS中的ABA问题 多线程下CAS产生的ABA问题: 如果线程2在执行的过程中, 线程1把主存的值操作后又改回为原来的值 比如A→B→A, 那么线程2会不知道自己期间是否有人对它进行过改动, 会继续执行自己的操作, 比如A→C。 结果就会造成线程1不符合A→C的期望 因为实际执行A(线程1) → B(线程2) → A(线程2) → C(线程1)。 解决的办法是使用AtomicStampReference类, 通过加版本的方式控制, 可理解为乐观锁。 public static void ABA
2021-01-27 20:08:12
153
5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人