欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Unsafe类中的compareAndSwapInt(Object var1, long var2, int var4, int var5)参数解释

程序员文章站 2022-05-12 11:30:01
...
public final native boolean compareAndSwapInt(Object var1, long var2, int var4, int var5);
  1. var1:要修改的对象起始地址 如:0x00000111
  2. var2:需要修改的具体内存地址 如100 。0x0000011+100 = 0x0000111就是要修改的值的地址
  3. 注意没有var3
  4. var4:期望内存中的值,拿这个值和0x0000111内存中的中值比较,如果为true,则修改,返回ture,否则返回false,等待下次修改。
  5. var5:如果上一步比较为ture,则把var5更新到0x0000111其实的内存中。
    原子操作,直接操作内存。