CAS操作

贴一个 AtomicInteger 实现主要原理,
AtomicInteger 类解释:

Unsafe类解释:

  • var5 = this.getIntVolatile(var1, var2); 获取操作前的数值 (也就是该内存地址现在的数值)。
  • while(!this.compareAndSwapInt(var1, var2, var5, var4)) 一直尝试cas操作。
    • var1,var2 直接确定内存地址。
    • var5 当前值
    • var4 目标值
    • compareAndSwapInt(CAS)操作含义 var1、var2 所在内存地址的值如果等于var5 就将该内存地址设值为 var4.

java 并发
java 并发

相关文章:

  • 2021-05-27
猜你喜欢
  • 2021-10-11
  • 2022-12-23
  • 2022-12-23
  • 2022-01-16
  • 2021-04-08
  • 2021-08-12
相关资源
相似解决方案