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

Posted 小南天门

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了并发编程之java内存模型(Java Memory Model ,JMM)相关的知识,希望对你有一定的参考价值。

一、图例

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)的主要内容,如果未能解决你的问题,请参考以下文章

并发编程系列之什么是Java内存模型?

并发编程系列之什么是Java内存模型?

深入理解Java内存模型——基础(转)

深入理解Java内存模型——基础

深入理解Java内存模型——基础

深入理解 Java 内存模型——基础