jvm内存详图
2021-10-19 15:43:29 0 举报
jvm内存详图
作者其他创作
大纲/内容
方法出口
栈(线程)
survivor区
main()栈帧
程序计数器:记录程序执行的行号
a=1
JVM虚拟机
1
a
Eden(8/10)
方法区(元空间)常量+静态变量+类信息
gc的时候会触发STW,导致用户线程暂停
本地方法栈
操作数栈
堆
stop the word
s0(1/10)
test()栈帧
局部变量表
程序计数器
STW
新new的对象在Eden区,当Eden区放满后,会触发minor gc,会将未被清理的对象会被移动到s0区,同时分代你年龄+1,当Eden区再次放慢后,又触发minor gc,将Eden和s0区中未被清理的对象都移动到s1区,同时分代年龄+1,当Eden再次放满后又会把s1中和Eden区未被清理的对象放到s0区,分代年龄+1,一次类推。默认当分代年龄到15时,对象移到老年代。
先进后出
.class文件
老年代(2/3)
1.每个线程有自己的栈
this
2.每个方法有自己的栈帧
full gc(整个堆)
s1(1/10)
类装载子系统
minor gc(年轻代)
年轻代(1/3)
main线程
字节码执行引擎
动态连接
0 条评论
下一页