0

我正在使用 JVisualVM 查看应用程序,并且在内存分析器和快照中看到了 SomeDomainClass 的许多对象。此后不久生成的 Java 堆转储(.hprof 文件)不包含 SomeDomainClass 的实例。因为内存分析器“显示分配的对象总数”,并且 hprof 文件包含堆中活动的对象,这是否表明应用程序正在创建 SomeDomainClass 的许多短期实例?

4

1 回答 1

1

实际上,当你开始生成堆时,visualVMGC在开始收集对象之前调用来确定活动对象。然后收集它们。

因此,如果您的堆没有显示任何SomeDomainClass类实例,那么是的,这些SomeDomainClass瞬间是短暂的,在其他世界中,这些实例在生成堆时没有任何引用。

于 2014-02-13T13:21:29.983 回答