yuyee
volatile
volatile语义:告诉处理器,不要到工作内存中找我,而是直接到主存中操作我,多线程或者多核环境下,变量共享
使用volatile要注意,他只能保证可见性,但不能保证原子性;
如i++之类的操作,他分为read i的值,之后执行i+1
当出现并发情况时,1线程read i的值,而2线程修改了i的值,这个时候1线程如果再将值刷到主存的话就会造成覆盖。
可以通过synchronized在同步代码段,保证原子性
或者使用jdk1.5的原子包
posted on 2010-11-01 14:04
羔羊
阅读(101)
评论(0)
编辑
收藏
所属分类:
concurrent
My Links
BlogJava
首页
联系
聚合
管理
Blog Stats
Posts - 28
Stories - 0
Comments - 1
Trackbacks - 0
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
给我留言
查看公开留言
查看私人留言
随笔分类
aop(4)
(RSS)
concurrent(5)
(RSS)
desginpattern(2)
(RSS)
IOC(2)
(RSS)
jvm(4)
(RSS)
linux
(RSS)
mina
(RSS)
oracle(2)
(RSS)
orm(2)
(RSS)
osgi(2)
(RSS)
缓存(2)
(RSS)
随笔档案
2010年11月 (13)
2010年10月 (14)
2010年9月 (1)
文章分类
aop
(RSS)
搜索
最新评论
1. re: cglib入门[未登录]
小白到此一游
--小白
阅读排行榜
1. 使用Annotation来完成spring aop(1812)
2. JAVA GC(1067)
3. cglib入门(1010)
4. ReentrantReadWriteLock读写锁(972)
5. OSGI小记(921)
评论排行榜
1. cglib入门(1)
2. JAVA GC(0)
3. JVM内存结构小记(0)
4. 使用Annotation来完成spring aop(0)
5. oracle中的递归查询(0)