JVM运行时数据区(内存结构)简介说明
下文笔者讲述JVM运行时内存结构简介说明,如下所示
JVM内存结构
JVM内存中分为以下几个区域,如下所示
线程私有区:
1.虚拟机栈
每次调用方法都会在虚拟机栈中产生一个栈帧
每个栈帧中都有方法的参数、局部变量、方法出口等信息
方法执行完毕后释放栈帧
2.本地方法栈
为native修饰的本地方法提供的空间
在HotSpot中与虚拟机合二为一
3.程序计数器
保存指令执行的地址
方便线程切回后能继续执行代码
线程共享区:
1.堆内存:
JVM进行垃圾回收的主要区域
存放对象信息
分为新生代和老年代
2.方法区
存放类信息、静态变量、常量、运行时常量池等信息
JDK1.8之前用持久代实现
JDK1.8后用元空间实现
元空间使用的是本地内存
而非在JVM内存结构中
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


