在java进程上运行jmap会将MaxHeapSize显示为3GB,请参阅下文
Heap Configuration:
MinHeapFreeRatio = 40
MaxHeapFreeRatio = 70
MaxHeapSize = 3221225472 (3072.0MB)
但是,在将各个区域的容量总和为
时Eden Space:
capacity = 53542912 (51.0625MB)
...
From Space:
capacity = 73728000 (70.3125MB)
...
To Space:
capacity = 76283904 (72.75MB)
...
PS Old Generation
capacity = 1065353216 (1016.0MB)
...
PS Perm Generation
capacity = 253755392 (242.0MB)
...
它的总容量为1452.125MB。
为什么总容量不能达到MaxHeapSize?
答案 0 :(得分:1)
当前容量!=最大可能容量。 GC可以调整内存区域,因为它认为适合各种目标。