总结一下java volatile
2016-07-11 14:44
316 查看
读了很多书籍。effective java和netty权威指南解释印象是比较深刻,也能互相印证。
借此总结一下,volatile的主要有2个作用
第一,阻止虚拟机对代码优化。解决指令重排问题。
第二,线程中变量可以实时同步到主存中,解决可见性问题。
volatile不能解决并发编程中,需要互斥的问题,但是经常可以用来解决,一个线程写,多个线程读的问题!
借此总结一下,volatile的主要有2个作用
第一,阻止虚拟机对代码优化。解决指令重排问题。
第二,线程中变量可以实时同步到主存中,解决可见性问题。
volatile不能解决并发编程中,需要互斥的问题,但是经常可以用来解决,一个线程写,多个线程读的问题!
相关文章推荐
- java web笔记——javaBean&EL表达式
- [改善Java代码]由点及面,一叶知秋----集合大家族
- [改善Java代码]非稳定排序推荐使用List
- java打印二维数组
- Java FTP上传文件工具类
- MySql三表联查(Spring+SpringMVC+MyBatis)
- Java GC 原理
- [改善Java代码]多线程使用Vector或HashTable
- 用JDK自带的包来解析XML文件(DOM+xpath)
- [改善Java代码]减少HashMap中元素的数量
- Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
- java二分法查找
- java自学篇之数组2
- [改善Java代码]使用shuffle打乱列表
- [改善Java代码]集合运算时使用更优雅的方式
- java自学篇之数组1
- Java基础——使用json所要用到的jar包下载
- [改善Java代码]集合中的元素必须做到compareTo和equals同步
- HeadFirstJava——8_接口与抽象类
- java接口的实现