Java面试通关手册

从萌新的角度理解java内存模型

2018-09-13  本文已影响0人  涂印

一丶工作内存和主内存

java内存模型,简称JMM(Java Memory Model),个人对于JMM理解是:JVM屏蔽了操作系统对于物理内存访问的复杂性,目的从软件设计角度呈现出的一种内存访问的逻辑视图。也就是JMM是JVM为软件工程师提供的一系列内存访问的逻辑规则,理解并合理使用这些规则就能正确访问内存,至于底层和物理内存直接交互动作已经被透明化了,无须关心。下图是JMM内存模型视图,是内存访问规则的基础。

JMM视图

二丶工作内存和主内存之间的交互规则

工作内存和主内存之间协同工作才是JMM的核心部分。从上文描述中可以知道,工作内存是主内存部分内容的拷贝,在多线程环境中,可能存在多份主内存的拷贝。CPU是直接操作工作内存,最后将工作内存同步到主内存,这个过程会造成各个工作内存具备不一致性为了在多线程环境下能实现工作内存中一致性,JMM定义了工作内存和主内存之间的交互操作,总共有8个原子性的交互操作

上一篇下一篇

猜你喜欢

热点阅读