✎
编程开发网
首页
C语言
C++
面试
Linux
函数
Windows
数据库
下载
搜索
当前位置:
首页
->
AI编程基础
->
JAVA
推荐使用concurrent包中的Atomic类 (二)
2014-11-24 08:16:56
·
作者:
·
浏览:
2
标签:
推荐
使用
concurrent
包中的
Atomic
封装,其内部实现不是简单的使用synchronized,而是一个更为高效的方式CAS (compare and swap) + volatile,从而避免了synchronized的高开销,执行效率大为提升。限于篇幅,关于“CAS”原理就不在这里讲诉。
因此,出于性能考虑,强烈建议尽量使用Atomic类,而不要去写基于synchronized关键字的代码实现。
最后总结一下,在这个帖子中我们讲诉了一下几个问题:
1. ++操作不是原子操作
2. 非原子操作有线程安全问题
3. 并发下的内存可见性
4. Atomic类通过CAS + volatile可以比synchronized做的更高效,推荐使用
作者: sky ao
首页
上一页
1
2
下一页
尾页
2
/2/2