首页 > 其他 > 详细

JVM内存模型

时间:2020-05-16 09:40:22      阅读:44      评论:0      收藏:0      [点我收藏+]

一. JVM内存结构图(JDK1.6)

技术分享图片

 

pc(程序计数器):保存当前线程正在执行的字节码的行号,线程私有;
JVM栈:栈里面存放着方法的基本数据类型和对象的引用,线程私有;

技术分享图片

 

 

局部变量表:方法中定义的局部变量都会存放在局部变量表。
?操作数栈:操作数栈将变量之间的运算入栈,存储计算结果,再出栈赋值给局部变量表
方法出口:方法出口记录了test()方法执行完成后的一个出口,也就是回到main()。


本地方法栈:本地方法供java直接调用本地 C/C++ 库方法,线程私有;

技术分享图片

 

 

:存放new出来的对象和数组,是垃圾回收区域,线程共有;
方法区:用于存储被虚拟机加载的类信息、常量和static变量,线程共有。

 

二. JVM内存结构图(JDK1.8)

技术分享图片

随着JDK8的到来,JVM不再有方法区,方法区存储的信息:1、虚拟机加载的类信息,2、运行时常量池,分别被移动到了元数据区和堆中。 元数据区和方法区最大的区别在于:元数据空间不在jvm中,而是使用本地内存。

 

JVM内存模型

原文:https://www.cnblogs.com/shijianchuzhenzhi/p/12898610.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!