2009-07-17 34 views

回答

2

我不確定是否可以簡單地訪問您正在查看的內容。

JPDA(Java平臺調試器架構)支持構建調試器,因此如果您想深入研究內部構件,這是一個很好的起點。有一個blog on the JPDA,你也可能會發現有用的。查看Sun Developer Network JPDA page以獲取文檔,常見問題解答,示例代碼和論壇的鏈接。這可能是好的起點

兩個接口:

  • com.sun.jdi.ObjectReference:從目標VM
  • com.sun.jdi.VirtualMachine java.lang.Class的一個實例:虛擬機針對調試
0

我不認爲有這樣的機制,並且沒有真正的理由GC會需要一個。

+0

GC需要知道對象存在哪些引用來知道是否垃圾回收。 – notnoop 2009-07-17 22:10:34

2

如果你正在尋找內存泄漏,我發現分析堆轉儲Eclipse MAT是非常有用的。您可以選擇一個對象並要求獲取「GC根」的路徑,即向我顯示所有引用鏈,以防止垃圾收集。

0

這取決於你想如何使用它一點點,但如果你需要它來分析你的內存使用情況,採取堆轉儲和MemoryAnalyzer打開它,或者與jHat可能會給你你需要的信息。採取不同的堆轉儲方式可以找到here

0

儘管JDPA API支持,但GC不支持這一點。但是在Java應用程序中做這種事情我會非常謹慎。無論在時間還是記憶上,它都可能會非常昂貴。

相關問題