Java并发编程-CAS
2015-06-02 09:55
543 查看
CAS(Compare and swap)比较和替换是设计并发算法时用到的一种技术。简单来说,比较和替换是使用一个期望值和一个变量的当前值进行比较,如果当前变量的值与我们期望的值相等,就使用一个新值替换当前变量的值
Unsafe用法:
作用,如果当前值和期望值相等,则将当前值更新为新的值X,并返回true
否则什么都不做,返回false
参考文章:
http://ifeve.com/compare-and-swap/
Unsafe用法:
作用,如果当前值和期望值相等,则将当前值更新为新的值X,并返回true
否则什么都不做,返回false
return unsafe.compareAndSwapInt(this, stateOffset, expect, update);/** * Atomically update Java variable to <tt>x</tt> if it is currently * holding <tt>expected</tt>. * @return <tt>true</tt> if successful */ public final native boolean compareAndSwapInt(Object o, long offset, int expected, int x);
参考文章:
http://ifeve.com/compare-and-swap/
相关文章推荐
- MyEclipse Hibernate Reverse Engineering 找不到项目错误
- 使用Java API创建(create),查看(describe),列举(list),删除(delete)Kafka主题(Topic)--转载
- eclipse项目文件上的红色感叹号
- Myeclipse环境Spring版本升级后Web Server启动失败
- Java普通工程转换成标准的maven工程
- JDK8 - The type java.util.Map$Entry cannot be resolved
- spring定时器时batch批量操作出现找不到session的解决办法
- 学习:二维码、QR码、J4L-QRCode、java
- Spring.Net 配置文件
- Spring Roo 实站( 一 )部署安装 & 第一个示例程序
- java实现在线用户统计
- myeclipse自定义java注释
- Eclipse-----快速打开当前工程目录 浏览文件插件 EasyExplorer 和 OpenExplorer
- Spring Roo 实站( 一 )部署安装 & 第一个示例程序
- 疯狂Java学习笔记(67)-----------Timer和TimerTask
- 【struts2】五大核心jar包 和 作用
- 集算器用作Java结构化文件计算类库
- 【Android】eclipse下gradle
- Myeclipse 快捷键大全(绝对全)
- springMVC 文件下载