Java 分配注释堆转储

Java 分配注释堆转储,java,memory-management,heap-dump,Java,Memory Management,Heap Dump,是否有任何现有工具可以使用分配站点注释进行Java堆转储?有了这样的堆转储,除了按类类型聚合外,我们还可以按运行时对象的分配位置(粗略地说,就是创建对象的新语句)聚合运行时对象 假设这种堆转储可用,您认为它对泄漏调试更有用吗?我帮助将此功能构建到中,但它是一种特定于平台的功能(这意味着它仅在安腾/HP-UX上可用)。这对于解决特定类型的问题很有用(例如,识别进行大量短期分配并造成GC压力的站点)。对于大多数泄漏,泄漏对象控制着对象图,您的标准工具将有助于将其可视化 在不太可能的情况下,这确实是您

是否有任何现有工具可以使用分配站点注释进行Java堆转储?有了这样的堆转储,除了按类类型聚合外,我们还可以按运行时对象的分配位置(粗略地说,就是创建对象的新语句)聚合运行时对象


假设这种堆转储可用,您认为它对泄漏调试更有用吗?

我帮助将此功能构建到中,但它是一种特定于平台的功能(这意味着它仅在安腾/HP-UX上可用)。这对于解决特定类型的问题很有用(例如,识别进行大量短期分配并造成GC压力的站点)。对于大多数泄漏,泄漏对象控制着对象图,您的标准工具将有助于将其可视化

在不太可能的情况下,这确实是您的开发环境,收集此数据的标志是
printalocstatistics
(同样,特定于平台!):


您还可以在线阅读有关此功能的更多信息。搜索分配统计信息

大多数商业档案都会这样做。e、 g.当程序运行时,YourKit还可以提供这些信息,包括各种报告,或者在程序结束时从其中一个转储中提供这些信息。注意:java堆转储不包含此信息。
 java ... -XX:+PrintAllocStatistics -Xverbosegc[0|1][:file=[filename[,[n][h][d][u][t]]]]