深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第1张图片

12.1 概述

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第2张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第3张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第4张图片

12.2 硬件的效率与一致性

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第5张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第6张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第7张图片

12.3 Java内存模型

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第8张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第9张图片

12.3.1 主内存与工作内存

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第10张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第11张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第12张图片

12.3.2 内存间交互操作

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第13张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第14张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第15张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第16张图片

12.3.3 对于volatile型变量的特殊规则

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第17张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第18张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第19张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第20张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第21张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第22张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第23张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第24张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第25张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第26张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第27张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第28张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第29张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第30张图片

12.3.4 对于long和double型变量的特殊规则

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第31张图片

12.3.5 原子性,可见性与有序性

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第32张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第33张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第34张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第35张图片

12.3.6 先行发生原则

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第36张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第37张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第38张图片

程序次序规则

管理锁定规则

volatile变量规则

线程启动规则

线程终止规则

线程中断规则

对象终结规则

传递性

 

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第39张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第40张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第41张图片

12.4 Java与线程

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第42张图片

12.4.1 线程的实现

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第43张图片

1.使用内核线程实现

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第44张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第45张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第46张图片

2.使用用户线程实现

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第47张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第48张图片

3.混合实现

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第49张图片

4.Java线程的实现

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第50张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第51张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第52张图片

12.4.2 Java线程调度

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第53张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第54张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第55张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第56张图片

12.4.3 状态转换

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第57张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第58张图片

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第59张图片

12.5 本章小结

深入理解JVM虚拟机读书笔记【第十二章】Java内存模型与线程_第60张图片

你可能感兴趣的:(JVM)