Contents
1.jvm进行篇
1.1内存分配
是否私有 | ||
---|---|---|
程序计数器 | 私有 | 没有oom |
虚拟机栈 | 私有 | 局部变量表,每个方法是一个栈帧,方法返回地址,静态链接,动态链接,基本数据类型 |
本地方法栈 | 私有 | 调用native方法 |
方法区(元空间) | 公有 | 类信息,常量,静态变量,数据符号引用 |
堆 | 公有 | 老年代,新生代(eden,s0,s1);stw,minorgc,majorgc,fullgc;new产生的实例 |
虚拟机栈:
静态链接:Map map = new HashMap();
动态链接:map.get();
堆:
stw:内存满了,垃圾回收,触发stw。
新生代为什么分为Eden区,s0,s1;避免垃圾回收产生大量碎片
新:老=1:2
//虚拟机栈:8中基本数据类型,对象引用
//堆:new
//方法区:类的描述信息,常量,静态变量,符号引用