MAT 分析dump檔案

2022-09-10 20:24:22 字數 806 閱讀 2037

public

class

oom

}

public

class

zip

public

void seta(lista)

public

void test(listlist)

}

public

class

r }

}

我刻意的製造了一段會溢位的**。

首先你可能需要改一下mat的配置檔案。

通過下圖的leak suspects分析是可以看出gc root的。比較**和圖中的b a。

還有其他的方式可以分析,點選dominator tree可以獲取到持有大物件的執行緒,然後在其上也可以執行gcroot的分析,如下圖。

最後說的話,

實際情況沒有這麼清晰的。你可能需要把gc root路徑上的每乙個都點一點來尋找到底**發生了問題。

使用MAT分析dump檔案

配置mat基本引數 jmap dump整個堆 linux mat分析 dump 檢視報告結果 修改mat的記憶體大小,注意這個大小要根據你dump檔案大小來的,如果dump檔案是5gb那麼 這裡最好配 5gb 否則會報mat記憶體不足的異常 memoryanalyzer.ini 修改memoryan...

使用MAT分析dump檔案定位程式問題

手工直接導,pid為程序號 memoryanalyzer.ini 配置檔案可以修改最大的記憶體,預設1g基本夠用了。若檔案太大可以臨時配8或16g大記憶體快速解析 執行命令 生成的檔案會和你的dump檔案在乙個目錄下,這裡為了區分,我將dumpwenjian放在新建的heap資料夾下,執行指令碼會生...

windbg分析dump檔案

1 開啟dump格式檔案 開啟windbg,通過選單 file open crash dump 選擇dump檔案開啟,也可通過cmd開啟dos命令視窗,切換到windbg所在目錄,利用命令 windbg z d lines2009 7 25 22 20 33 900.dmp z表示路徑 圖1.1 利...