java垃圾回收策略: 分代回收

根据对象的生存周期的长短, 划分三代: Young---> Old----->Permanent(永久的)

1,Young Generation:   young代

java垃圾回收策略: 分代回收

2,Old Genration:       old 代

java垃圾回收策略: 分代回收

java垃圾回收策略: 分代回收

3, Permanent Generation : 永久代

java垃圾回收策略: 分代回收


垃圾的 --->分代回收:  具体执行流程如下

java垃圾回收策略: 分代回收

谁实现了分代回收? ----->垃圾回收器 !

怎么调用垃圾回收器,使java程序可以做到分代回收 ?--->依据不同情况,选择不同的垃圾回收器 ! 

有 哪些 垃圾回收器 可以选择?     如何调用?

 A, 串行回收器:

java垃圾回收策略: 分代回收

下面是一张示意图:Young代的内存管理

java垃圾回收策略: 分代回收  java垃圾回收策略: 分代回收

java垃圾回收策略: 分代回收

 下图表示: Old代的内存管理:

java垃圾回收策略: 分代回收    ---->>    java垃圾回收策略: 分代回收

java垃圾回收策略: 分代回收


 B, 并行回收器:

java垃圾回收策略: 分代回收

 

C, 并行压缩回收器:parallel compacting collector

java垃圾回收策略: 分代回收java垃圾回收策略: 分代回收


D, 并行标志-清理器:concurrent  mark sweep collector

java垃圾回收策略: 分代回收

         java垃圾回收策略: 分代回收  ---->>   java垃圾回收策略: 分代回收


以上截图: 来源   《疯狂java》李刚

====================   扩展: (垃圾回收--基本算法)名词解释   ==============

java垃圾回收策略: 分代回收

java垃圾回收策略: 分代回收

java垃圾回收策略: 分代回收

java垃圾回收策略: 分代回收

java垃圾回收策略: 分代回收