内部结构
-Xmn:年轻代大小
返回值
操作数栈
新生代 Edn
栈帧
非堆
-XX:MetaspaceSize:初始空间大小-XX:MaxMetaspaceSize:最大空间,默认是没有限制的。
局部变量表
s0 存活区
s1 存活区
线程栈
-Xmx:最大堆大小-Xms:初始堆大小
Metaspace:元数据区
堆(堆内存)
老年代
线程栈:1.所有原生类型的局部变量。2.局部变量槽位中,保存着对象的引用地址。堆内存:1.对象的成员变量与对象本身。2.类的静态变量则和类定义一样都保存在堆中。CCS:存放 class 信息的,和Metaspace 有交叉。Code Cache:存放 JIT 编译器编译后的本地机器代码。
Code Cache
栈
Class/Mathod指针
年轻代
-Xss:设置每个线程的堆栈大小
常量池
方法区
Java进程(JVM 内存模型)