爲了確定Java堆大小我用下面的命令:瞭解Java堆
java -XX:+PrintFlagsFinal -version -h | grep HeapSize
uintx ErgoHeapSizeLimit = 0 {product}
uintx HeapSizePerGCThread = 87241520 {product}
uintx InitialHeapSize := 1586475520 {product}
uintx LargePageHeapSizeThreshold = 134217728 {product}
uintx MaxHeapSize := 25383927808 {product}
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
但是,我無法理解,什麼是ErgoHeapSizeLimit,HeapSizePerGCThread,InitialHeapSize,LargePageHeapSizeThreshold,MaxHeapSize等意思有人可以簡要解釋這些條款嗎?其實我是一個完整的新手在java
其實我需要確定我的機器可以分配給一個進程的堆大小?因爲我的一個應用程序需要以下參數:-server,-Xmx16G或更好的等待設置。
你爲什麼不只是使用'-Xmx16G'?甚至是'-Xmx25G',因爲這是您可以分配的最大堆大小... – 2014-10-29 13:34:39