有没有办法查看 JVM 中哪个特定代(伊甸园、旧等)中有哪些特定对象?我试图找出一种方法来查看哪些对象存在问题。我正在使用 JProfiler,记录内存会在任何时候告诉你实时和 GCed 对象,但不会告诉你对象在哪几代。还有其他工具可以告诉你吗?我似乎也找不到任何这样的 GC 调试选项。
附带说明一下,使用 JProfiler 记录内存似乎对应用程序有太多开销,因此要么我无法长时间记录内存(快速达到峰值内存),要么开销以某种方式干扰/影响应用程序行为。还有,记录记忆。对此有任何建议(我是否缺少开关以避免这种情况)?我通常选择动态仪器选项,但据我所知,我使用采样的几次也有相同的效果。