我使用的系统正在创建大量的对象和垃圾,它们一直在收集它们,导致堆消耗的图表非常陡峭.我想知道正在生成哪些对象来调优代码,但我无法找到在垃圾收集开始时转储堆的方法.当我试图在随机时间通过JConsole手动启动dumpHeap时,我总是在GC完成运行后得到结果,并且没有得到任何有用的数据.
有关如何追踪过多临时对象创建的任何说明都是受欢迎的.
最佳答案 看看BTrace可以做什么(
http://kenai.com/projects/btrace/pages/Home),或者尝试在JDK 6u18中使用jvisualvm进行实时内存采样.