JMM(Java线程内存模型)

时间:2021-09-08 18:59:09   收藏:0   阅读:44

JMM

1. CPU与内存

1.1 CPU架构历史

早期,计算机是单核的。

随着科技的发展,计算机也从单核CPU -> 多核CPU,多核CPU计算机早期,CPU与主内存的交互图如下:

技术分享图片

这种交互方式有一个问题:

为了解决:上述的问题,计算机的CPU引入了:高速缓存;如下图:

技术分享图片

CPU与高速缓存进行交互,高速缓存与主内存进行交互。

通常,为了解决问题A,而引入的方案B,方案B也会有一定的缺陷。

上图中的缺陷就是:

为了解决:数据的不一致,又引入了:缓存一致性协议,如下图:

技术分享图片

2. JMM

2.1 JMM是什么?

JMM,全称:Java Memory Model(Java线程内存模型)。

JMM,也是借鉴参考了:现代计算机 CPU与主内存 交互的架构。

2.2 JMM内存模型图

技术分享图片

2.3 JMM的8个指令

技术分享图片

原文:https://www.cnblogs.com/dyorick/p/15241847.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!