码迷,mamicode.com
首页 > 编程语言 > 详细

《深入理解java虚拟机》---第12章 java内存模型与线程

时间:2020-06-10 13:23:51      阅读:55      评论:0      收藏:0      [点我收藏+]

标签:style   span   text   内存模型   虚拟   com   竞争   私有   定义   

1、概述

    1.1、JVM规范 试图  定义一种java内存模型(JMM) 来  屏蔽掉各种硬件和OS的内存访问差异,以  实现 让java程序在各种平台下都达到一致的并发效果

    1.2、JDK1.5后,JMM 已经成熟和完善;

2、主内存 与 工作内存

    技术图片

 

 

    2.1、JMM 的主要目标: 定义  程序中各个变量的   访问规则

                (在JVM中   将变量  存储到内存 与 从内存中取出变量 的底层细节);

                (变量:包含 实例字段、静态字段...不包含 局部变量 [线程私有,不存在竞争关系] );

    2.2、JMM 规定   所有的变量 都存储在 主内存

                (主内存:JVM内存的一部分);

    2.3、JMM规定 每条线程 有自己的工作内存

                (工作内存:保存了 被该线程使用到的变量的  主内存的拷贝

                      线程 对变量的所有操作  必须在工作内存中进行

                      线程  不能直接  读写   主内存中的变量

                      不同的线程 之间  不能直接访问 对方工作内存的变量

                      不同线程间  变量的值传递  需要 通过主内存完成

  

《深入理解java虚拟机》---第12章 java内存模型与线程

标签:style   span   text   内存模型   虚拟   com   竞争   私有   定义   

原文地址:https://www.cnblogs.com/anpeiyong/p/13083979.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!