HotSpot中的GC如何相互配合

时间:2017-11-24 07:26:46

标签: garbage-collection hotspot

众所周知,在HotSpot中有七个GC,如Serial,CMS,G1等。我感到困惑的是,他们中的所有人还是只有一部分人一次工作?他们如何相互合作以完成垃圾收集的任务? 我很感激这个问题的任何答案。 祝大家好心!

1 个答案:

答案 0 :(得分:0)

以下是Java 8中GC algos的可能组合。

  • -XX:+UseSerialGC - Serail Young(DefNew)+ Serial Old Mark Sweep Compact

  • -XX:+UseParallelGC - Parallel Young(PSYoungGen)+ Serial Old Mark Sweep Compact

  • -XX:+UseParallelOldGC - 平行年轻(PSYoungGen)+平行旧马克扫描紧凑

  • -XX:+UseParNewGC - Parallel Young(ParNew)+ Serial Old Mark Sweep Compact

  • -XX:-UseParNewGC -XX:+UseConcMarkSweepGC - Serial Young(DefNew)+ Concurrent Mark Sweep(Old)

  • -XX:+UseParNewGC -XX:+UseConcMarkSweepGC - 平行年轻(ParNew)+并发标记扫描(旧)

  • -XX:+UseG1GC - G1

Source of information

Parallel Scavenge和ParNew非常相似,但ParNew与CMS(并发标记扫描)和Parallel Scavenge兼容,并与Mark Sweep Compact旧空间采集器兼容。

G1仅涵盖年轻和旧的系列。