Java 堆转储如何收集数据
我知道有很多方法可以获取Java进程的堆转储。但我想知道这些数据是如何收集的Java 堆转储如何收集数据,java,jvm,heap,heap-memory,heap-dump,Java,Jvm,Heap,Heap Memory,Heap Dump,我知道有很多方法可以获取Java进程的堆转储。但我想知道这些数据是如何收集的 换句话说,当转储被触发时,JVM中的哪个组件提供了这个堆数据。一般来说,像“jmap”这样的工具会与不属于Java公共API的组件进行对话:sun.JVM.hotspot.包中的内容 如果“jmap”正在转储连接的JVM,它将通过JVMTI与JVM的调试代理进行交互 在其他情况下,“jmap”使用sun.jvm.hotspot.*中的各种类从jvm进程地址空间或核心转储中提取信息 如果您想了解详细信息,请下载Ope
换句话说,当转储被触发时,JVM中的哪个组件提供了这个堆数据。一般来说,像“jmap”这样的工具会与不属于Java公共API的组件进行对话:
sun.JVM.hotspot.
包中的内容
- 如果“jmap”正在转储连接的JVM,它将通过JVMTI与JVM的调试代理进行交互
- 在其他情况下,“jmap”使用
中的各种类从jvm进程地址空间或核心转储中提取信息sun.jvm.hotspot.*
JMap.java
文件,然后开始阅读