簡體   English   中英

堆轉儲如何收集數據

[英]How heap dump collects data

我知道有很多方法可以進行Java進程的堆轉儲。 但是我想知道如何收集這些數據。

換句話說,當轉儲被觸發時,JVM中的哪個組件提供了此堆數據。

一般而言,諸如“ jmap”之類的工具會與不屬於Java公共API的組件進行對話: sun.jvm.hotspot.*軟件包中的內容。

  • 如果“ jmap”正在轉儲附加的JVM,則它將通過JVMTI與JVM的調試代理進行交互。

  • 在其他情況下,“ jmap”使用sun.jvm.hotspot.*各種類從JVM進程地址空間或核心轉儲中提取信息。

如果您想了解這些細節,請下載OpenJDK源代碼(選擇任何版本),找到JMap.java文件,然后開始閱讀。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM