【发布时间】:2015-07-17 16:53:36
【问题描述】:
我有一个托管多个 Web 应用程序的 tomcat 服务器的堆转储。
在每个应用程序中都有几个类具有实例。当我列出转储中包含的所有类时,我会得到这些类的多行,每行显示不同数量的实例。因此,似乎每一行都显示了其中一个 Web 应用程序中所述类的实例数量。
当我使用 OQL 计算一个类的所有实例时,例如select count( heap.instances(myClass) ) 我没有得到 myClass 的所有实例的总数,而是等于前面提到的列表中显示的数量之一。
所以在我看来,出于某种原因,OQL 查询仅限于一个 Web 应用程序上下文,即使堆转储包含多个。
如何访问堆转储的所有实例?
【问题讨论】:
-
你试过 Eclipse 内存分析器吗?我使用它和visual vm只是因为它们有不同的功能。