G1垃圾收集器是否为每个区域使用相同的区域大小?

时间:2015-02-06 12:27:12

标签: java g1gc

Oracle的Getting Started with the G1 Garbage Collector教程说明以下关于G1垃圾收集器的区域大小:

  

堆是一个分成许多固定大小区域的内存区域。

     

[...]

     

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

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

1 个答案:

答案 0 :(得分:2)

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

  

G1 GC是一个区域化的世代垃圾收集器   意味着Java对象堆(heap)被分成若干个   同等规模的地区。

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