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

java cas硬件底层接口 sun.misc.Unsafe UNSAFE 博客分类: 分布式  

程序员文章站 2024-03-25 22:19:40
...
/**
*比较并更新对象的某一个整数类型的域
*@param obj 被操作的对象
*@param fieldoffset 被操作的域在对象中的偏移量
*@param expect 域的期望值
*@param update 域的更新值
*/
boolean compareAndSwapInt(Object obj,long fieldoffset, int expect, int update);

/**
*比较并更新对象的某一个对象类型的域
*@param obj 被操作的对象
*@param fieldoffset 被操作的域在对象中的偏移量
*@param expect 域的期望值
*@param update 域的更新值
*/
boolean compareAndSwapObject(Object obj,long Fieldoffset, Object expect, Object update);

/**
*获得对象某个域的偏移量
*@param field 要获得偏移量的域
*/
long objectFieldOffset (Field field);

/**
*使当前线程在指定的等待时间之前一直等待
*@param flag 等待时间类型 true代表绝对时间(用相对于历元
*(Epoch) 的毫秒数值表示),false代表相对时间
*@param time 等待的时间,单位毫秒
*/
void park(boolean flag, long time);

/**
*取消指定线程的等待
*@param thread 被取消等待的线程
*/
void unpark(Thread  thread)

/**
*通过偏移量,获取某个对象Object类型的域
*@param obj 被操作的对象
*@param fieldoffset 偏移量
*/
Object getObject(Object obj,long fieldoffset);

/**
*通过偏移量,获取某个对象整数类型的域
*@param obj 被操作的对象
*@param fieldoffset 偏移量
*/
int getInt(Object obj,long fieldoffset);