JVM0713-----垃圾回收器从CMS演变到G1

1.目前java的垃圾回收器(Garbage Collectors)一共有10种

2.怎么找到垃圾?

Root Searching 根可达算法

什么是根?(main方法里的绝对有用)

3.常见的垃圾算法

 

4.GC的演化过程

JDK1.8使用分代管理的方法:

一个对象诞生进入伊甸园,当伊甸园满了之后,进行GC,那些回收了好几次都回收不掉的,进入老年代。

 

5.伊甸区和幸存者区

新诞生的对象全伊甸园这里仍,满了之后发生YGC。一次回收之后存货的对象被复制到幸存者1区,然后清空伊甸园区。下一次GC,扫描伊甸园和幸存者1区,把活着的复制到幸存者2区,清空伊甸园区和1区,依次循环。年龄够了进入到老年代。

6.survivor装不下去怎么办

可以进行JVM调优进行调整。

为什么要有幸存者区,YGC十分频繁,效率第一,复制算法最快。

7.在分代算法的基础上有哪些垃圾回收器

1)单线程GC

只有一个人帮你回收垃圾!!!

当空间快不够时,妈妈推门而入,告诉你们停止,不许动(STW),然后顺着线找垃圾,找完后,告诉你们‘继续吧‘!

STW: stop the world 业务线程不能工作,无响应。

 线程数不是越多越好,因为有一个线程切换,需要消耗资源。

2)concurrent mark sweep--CMS(并发GC)

 一边处理业务,一边回收垃圾。

一边扔垃圾,一边有人帮你捡垃圾。不用STW了。

8. CMS 存在的问题:

一个对象被认定为垃圾的不确定性,下一秒可能就是垃圾了,同理,反之。

怎么解决扫描的时候,对象的状态变化问题?

三色标记算法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值