jvm 垃圾收集器

来源:互联网 发布:java两个日期相差年数 编辑:程序博客网 时间:2024/06/16 11:45

对象的内容:

对象头,实例数据,填充补齐.

对象头:1,运行时数据,hashCode,GC 年代,锁状态标志,线程持有锁,偏向线程ID,偏向时间戳.

    2,对象还有一个类型指针,指向类元数据的指针.

可达性分析:

从GCroot 查找是否存在引用 .

1,虚拟机栈中引用的变量.

2,方法区中静态属性引用的对象.,常量引用的对象,native引用的对象.

垃圾清楚方法:

标记清除.

2,复制算法,内存分为两块儿,8:1分配.

3,标记整理:

分代收集算法:

枚举根节点(OopMap)

一,serial 单线程,只使用一个线程,一个cpu,会暂停所有其他线程的工作.Stop the world. Client模式新生代常用

二,ParNew 就是serial 的多线程版本.默认新生代收集器.

三,Parallel Scavenge 收集器.使用的是复制算法的多线程收集器.特点是可以达到可控制的吞吐量.吞吐量优先收集器.

四,Serial Old 使用标记整理算法,serial 老年代算法,Client 老年代使用.

五,Parallel Old Parallel Scavenge 收集器 的老年代版本.

六,CMS收集器,标记清除算法.

1,初始标记,并发标记,重新标记,并发清除.

2,初始标记和重新标记任然需要Stop the world.初始标记很快.重新标记会耗时长一点.

3,并发标记,并发清楚都可以和用户线程同时运行.

4,cpu资源敏感.(cpu数量+3)/4.

5,CMS无法处理浮动垃圾(并发清理阶段用户线程产生的垃圾),可能导致fullGC.

6,标记清除算法会导致空间碎片过多.

七,G1收集器

1,并发与并行,使用多个CPU减少stop the world 的耗时.

2,分代收集,采用不同的方法管理不同的新生代和老年代.

3,采用标记整理算法,没有那么多空间碎片.局部是基于复制算法.整体是基于标记整理.

4,可预测的停顿,设置最大停顿时间.几乎是实时收集器了.

5,G1把内存化整为零,分为多个部分.分为以下几个步骤.

初始标记,并发标记,最终标记,筛选回收.

特点是最后筛选回收,选取收集价值最高的region.

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 qq把微信冻结了怎么办 微信给封号了怎么办 微信久了没登录冻结了怎么办 换手机号了微店怎么办 ai文件置入后都是字怎么办 excel加载项被禁用了怎么办 被期刊网骗了怎么办 发表的文章不想被收录怎么办? 农村长说的眼睛害了怎么办 普通党员不认同领导的决定怎么办 大学读不下去了怎么办 教师因病长期不能上班怎么办 长按win键黑屏了怎么办 巡视组巡视出问题后续怎么办 货运资格证两次没继续教育怎么办 电子注册备案表学信网查不到怎么办 学信网学籍档案没照片怎么办 信访局不给答复怎么办 发票跳了一个号怎么办 报税用的ca证书怎么办 报税u盘丢了怎么办 地税ca证书丢了怎么办 深圳ca证书丢了怎么办 武汉国税报税证书过期怎么办 江苏大学专业选修课挂了怎么办 电信翼企享福卡怎么办 教育部学籍在线验证报告过期怎么办 身份证被别人注册了学信网怎么办 大专文凭查不到学籍该怎么办 学信网上查不到学历怎么办 学信网上没有学历照片怎么办 学信网上没照片怎么办 学历认证报告丢了怎么办 学历认证弄丢了怎么办 手机系统安全证书有问题怎么办 台式电脑的浏览器证书出错怎么办 网上银行k宝密码忘了怎么办 工行证书介质已被锁定怎么办 学历认证是假的怎么办 怕被公司查学历怎么办 淘宝玩具没有怎么办3c