1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-06-16 18:10:13 +08:00

Update jmm.md

According to https://download.oracle.com/otn-pub/jcp/memory_model-1.0-pfd-spec-oth-JSpec/memory_model-1_0-pfd-spec.pdf, giving a formal definition of Java Memory Model.
This commit is contained in:
纪卓志 2023-01-17 23:20:48 +08:00 committed by GitHub
parent 3bb366ad35
commit 15d6ea12d7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -12,6 +12,8 @@ head:
content: 对于 Java 来说,你可以把 JMM 看作是 Java 定义的并发编程相关的一组规范,除了抽象了线程和主内存之间的关系之外,其还规定了从 Java 源代码到 CPU 可执行指令的这个转化过程要遵守哪些和并发相关的原则和规范,其主要目的是为了简化多线程编程,增强程序可移植性的。
---
JMM(Java内存模型)主要定义了对于一个共享变量,当另一个线程对这个共享变量执行写操作后,这个线程对这个共享变量的可见性。
要想理解透彻 JMMJava 内存模型),我们先要从 **CPU 缓存模型和指令重排序** 说起!
## 从 CPU 缓存模型说起