jprofiler:如何识别应用程序中的这个内存在其(应用程序的)理想模式中保持不变的原因

时间:2014-11-26 13:38:55

标签: hibernate spring-mvc profiling quartz-scheduler jprofiler

我在我们的一个应用程序上运行了JProfiler:

这是 JProfiler>遥测>内存快照:

enter image description here

当应用程序处于IDEAL模式时,您可以看到最后四个缓慢增加的内存。我无法弄清楚为什么会这样。任何人都可以帮我找到更多细节。

我们使用SpringMVC,Hibernate,DWR,Quartz(用于调度)和其他常见的(常见日志记录)。

编辑:

应用程序理想模式下的增加内存主要是char []和int []。我从 Jprofiler>得到了这个现场记忆>所有对象。你可以在这里看到:

enter image description here

我无法记录此对象。我试图获得更多细节但不能这样做,当我尝试char []右键单击>在Heap Walker中显示选择:然后它只显示几个KB。你可以在这里看到:

enter image description here

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

这是一种难以分析的临时内存消耗。可能有许多短期对象未显示在堆快照中。

跟踪创建对象的一种方法是使用“Memory-> Recorded Objects”视图并调用

查看 - >更改实时模式 - >垃圾收集对象

从菜单(或工具栏)中

。释放内存后,您将分析已经垃圾回收的短期对象的累积统计信息。

要查看这些对象的分配位置,您可以右键单击行并从上下文菜单中选择“显示分配树”或“显示分配热点”。