UnSafe
目录乐观锁
- CAS 原子操作
compareAndSwapInt
- 从var1对象的起始指针移动var2位,如果该位置上存储的值等于var4,那么将该值修改成var5
- var1 比较对象
- var2 指针偏移量
- var4 条件值
- var5 新值
public final native boolean compareAndSwapInt(Object var1, long var2, int var4, int var5);
getObjectVolatile
- 获取当前对象var1在该对象指定偏移量var2上的值
public native Object getObjectVolatile(Object var1, long var2);
putObject
- 修改对象var1上偏移var2后位置上的值为var4
public native void putObject(Object var1, long var2, Object var4);
objectFieldOffset
- 获取当前对象var1字段在该对象的偏移量
- var1:对象中的字段
public native long objectFieldOffset(Field var1);
标签:var4,var1,var2,CAS,Object,UnSafe,long,操作
From: https://www.cnblogs.com/heyanfeng/p/18135575