3

我需要我的Oracle熱點比UseGCOverheadLimit的默認參數更快地拋出異常java.lang.OutOfMemoryError: GC overhead limit exceeded調整GC開銷超出的參數

默認情況下,當超過98%的時間用於GC並且堆中的小於2%被恢復(描述爲http://www.oracle.com/technetwork/java/javase/gc-tuning-6-140523.html#par_gc.oom)時,OOME發生。

例如,當超過20%的時間用於GC時,我需要我的JVM拋出OOME。 不幸的是,-XX:GCTimeRatio=nn似乎沒有什麼區別。

我需要以這種方式調整我的JVM的原因是我測試我的應用程序是否包含內存泄漏(具體來說,我有一個內存泄漏檢測基礎結構,我希望每天測試我們的應用程序),我不需要我的JVM儘可能地努力去釋放堆。

回答

1

默認情況下,當所述時間超過98%用於在GC和堆的低於2%被回收

這兩個值通過GCHeapFreeLimit配置和GCTimeLimit

OOME發生

GCTimeRatio只定義了GC啓發式將優化的軟目標。

+0

謝謝!很傷心,我無法谷歌它... –

相關問題