2015-02-06 40 views
1

Oracle的Getting Started with the G1 Garbage Collector教程说以下有关区域尺寸与G1垃圾收集器:G1垃圾收集器是否为每个区域使用相同的区域大小?

堆是一个存储器区域分割成许多固定尺寸的区域。

[...]

区域大小由JVM在启动时选择。 JVM 通常针对2000个区域,大小从1到32Mb不等。

目前尚不清楚的所有区域是否具有在JVM相同的尺寸或可能存在具有不同尺寸的区域(例如,区域1500具有1MB的大小和区域500具有2MB的大小)。

回答

2

是的,这些地区的大小相同。文章Garbage First Garbage Collector Tuning说:

的G1 GC是区域化和世代无用单元收集器,其 意味着Java对象堆(堆)被划分成数个 相等大小的区域。

JVM旨在创建约2000个区域。它们的实际大小取决于您的最小堆大小。