有沒有一種方法可以查看JVM中哪些特定對象在特定的一代(伊甸園,舊等)中?我試圖找出一種方法來查看究竟哪些對象有問題。我正在使用JProfiler,記錄內存將在任何時間告訴你實時和GCed對象,但不告訴你對象在哪一代。任何其他工具告訴了這一點?我似乎無法找到任何這樣的GC調試選項。如何在JVM中查看特定代中的對象?
在附註中,使用JProfiler錄製內存似乎在應用程序上有太多開銷,所以要麼我無法長時間記錄內存(快速達到峯值內存),或者開銷會以某種方式干擾/影響應用行爲。另外,記錄內存。對此的任何建議(我是否缺少開關以避免這種情況)?我通常使用Dynamic Instrumentation選項,但據我記得我使用Sampling的幾次也有同樣的效果。
感謝,將檢查YourKit出來! – prams 2012-04-09 22:16:18
@UmNyobe您是否指此功能? http://www.yourkit.com/features/index.jsp#generations – fglez 2013-03-07 10:32:09
This one http://www.yourkit.com/docs/java/help/gc_telemetry.gif – UmNyobe 2013-03-07 10:35:41