JVM内存模型
2021-01-13 17:25:54 0 举报
JVM内存模型简图(自己理解)
作者其他创作
大纲/内容
iload_0
执行int类型的乘法
istore_2
survivor
动态链接
sum()方法栈帧
程序计数器
int a
public static int sum() { int a = 10; int b = 20; int c = (a + b) * 3; return c;}
类加载子系统
int a = 10
线程独享
new User()
执行int类型的加法
ireturn
20
从局部变量1中装载int类型值
将int类型变量a存入变量表
10
static User s1 = new User()
Eden(8)
30
minor GC
iadd
10+20=30
将10压入栈
字节码执行引擎
full GC
to(1)
iload_2
虚拟机栈
int c
线程共享
从方法中返回int类型的数据
从局部变量0中装载int类型值
操作数栈
istore_1
main线程
istore_0
bipush 10
本地方法栈
堆Heap
方法出口
STW
imul
iconst_3
15
bipush 20
将int类型值存入局部变量2
局部变量表
iload_1
int b
from(1)
s
代码示例
方法区(元空间) 常量、静态变量、类信息
old(2/3)
将int类型常量3压入栈
main()方法栈帧
从局部变量2中装载int类型值
将20压入栈
将int类型变量b存入变量表
JVM
User s = new User();
JVM内存模型简图
0 条评论
下一页