gc:垃圾回收(grabage collectors)
垃圾:什么是垃圾,从main方法开始,梳理的到的不是垃圾,梳理不到的是垃圾,根可达算法;
识别垃圾的方法:
1.Mark-Sweep:标记清除,内存会碎片话,存不了大内存数据。
2.Copying:拷贝,空间一分为二,拷贝很快,缺点是浪费内从。
3.Mark-Compact:标记压缩,一边找一边整理,效率低。
垃圾回收模型
1.分代模型
年轻代,老年代
在年轻代诞生,总是回收不了会进入老年代;
2.分区模型
CMS:使用三色标记算法
G1:SATB Snapshot At the Begining 使用三色标记算法
对象头具体包括什么?
1.markword 包括什么?
1.锁信息;2.hashcode;3.GC信息
2.class pointer(类型指针)
3.instance data(实例数据)
4.padding(对齐)
Object o = new Object()在内存中占用多少字节?
答:16个字节;markword占8字节,class pointer占4字节,instance data占4字节
对象头怎么定位?
答:jvm默认直接指针;二:句柄方式间接方式
对象怎么分配?
答: