首页 > 编程语言 > 详细

并发编程之java内存模型(Java Memory Model ,JMM)

时间:2018-06-25 21:33:42      阅读:190      评论:0      收藏:0      [点我收藏+]

一、图例

技术分享图片

0、两个概念

Heap(堆):运行时的数据区,由垃圾回收负责,运行时分配内存(所以慢),对象存放在堆上

如果两个线程,同时调用同一个变量,怎两个线程都拥有,该对象的私有拷贝

(可以看一下,ThreadLocal:   引用注明出处,https://www.cnblogs.com/xiaonantianmen/p/9151481.html)

Stack(栈):存放一些引用变量

二、多cpu情况

技术分享图片

0、JVM与物理内存之间的通信。

技术分享图片

 2、线程之间的通信必须通过主内存(此处则是要考虑synchronize或volital等):

技术分享图片

三、java内存模型-------同步八中操作

技术分享图片

 

 

四、并发的优势与风险

 

 技术分享图片

 五、总结

CPU多级缓存:缓存一致性、乱序执行优化

Java内存模型:JMM规定、抽象结构、同步八种操作及规则

java并发的优势与风险

 

并发编程之java内存模型(Java Memory Model ,JMM)

原文:https://www.cnblogs.com/xiaonantianmen/p/9226320.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!