JVM-内存区域管理
2021-07-21 00:29:48 0 举报
JVM-内存区域管理
作者其他创作
大纲/内容
Tenured Space
方法区Method A
To(1/10)
所有线程共享
程序计数器Program Counter Register
本地库接口
本地方法栈Native Method Stack
运行时数据区
本地方法库
Young Generation(1/3堆空间)
虚拟机栈VM Stack
Eden(8/10)
From(1/10)
执行引擎
垃圾回收:1、对象首先在新生代Eden区分配(大对象直接进入老年代),当空间不足时发起Minor GC。2、经过GC后仍存活的对象被移到Survivor区(无法容纳的对象送入老年代)。3、对象在Survivor经过多次(默认15次)Minor GC后会被移入老年代。4、老年代的连续空间大于新生代所有对象的总大小或者历次晋升的平均大小就会进行Minor GC,否则会进行Full GC。
堆Heap
方法区: 虚拟机加载的类型信息、常量、静态变量、即时编译器编译后的代码堆:存放对象实例以及数组,垃圾收集器管理的内存区域。虚拟机栈:Java方法执行的线程内存模型,每个方法对应一个栈帧,方法执行对应在虚拟机栈中的入栈出栈。本地方法栈:与虚拟机栈类似,为本地(Native)方法服务。程序计数器:当前线程执行字节码指令行号指示器。
Old Generation(2/3堆空间)
Survivor区
线程私有
堆空间
收藏
0 条评论
下一页