leakdiag是乙個監測記憶體洩漏的工具,可以用來精確地找到記憶體洩露一直到**行。它使用微軟的detours 技術,攔截指定記憶體分配的呼叫並跟蹤各種呼叫棧,並報告已分配但尚未釋放的記憶體,這一資訊允許讓我們在排除乙個記憶體洩露問題時,能精確檢視哪些元件進行了該分配。使用正確的除錯符號,我們甚至可以看見請求分配的**行。
關於detours:
leakdiag 目前支援六種型別的洩漏檢查:
virtual allocator
heap allocator
mpheap allocator
com allocatorcotaskmem
com private allocator
c runtime allocator
版本:1.25
或者:
使用方法:
1、編寫乙個包含記憶體洩漏問題的c程式,例如leakdiagtest1:
#include
int main(int argc, char* argv)
char *p = null;
while (getc(stdin))
p = (char *)malloc(1024);
//delete(p);
return 0;
2、執行c程式的可執行檔案leakdiagtest1.exe,開啟leakdiag
在程序列表中選擇leakdiagtest1.exe
在memory allocators列表中選擇「windows heap allocator」
按start開始進行監測
3、在leakdiagtest1執行過程中,可多次按log進行記憶體資訊收集(「快照」),最後按stop停止監測
4、開啟logs目錄中的日誌檔案進行分析,可發現有記憶體洩漏現象:
5、用ldgrapher可以圖形的方式更加直觀地看到多個快照點連續的記憶體洩漏情況
記憶體洩漏測試小工具 LeakDiag
leakdiag 是乙個監測記憶體洩漏的工具,可以用來精確地找到記憶體洩露一直到 行。它使用微軟的 detours 技術,攔截指定記憶體分配的呼叫並跟蹤各種呼叫棧,並報告已分配但尚未釋放的記憶體,這一資訊允許讓我們在排除乙個記憶體洩露問題時,能精確檢視哪些元件進行了該分配。使用正確的除錯符號,我們甚...
記憶體洩漏測試小工具 LeakDiag
leakdiag是乙個監測記憶體洩漏的工具,可以用來精確地找到記憶體洩露一直到 行。它使用微軟的detours 技術,攔截指定記憶體分配的呼叫並跟蹤各種呼叫棧,並報告已分配但尚未釋放的記憶體,這一資訊允許讓我們在排除乙個記憶體洩露問題時,能精確檢視哪些元件進行了該分配。使用正確的除錯符號,我們甚至可...
測試flash之小工具
include include include include include include include include define nvs ap ver 20110718 define read nvs wisnvs 0x0000 define read nvs uboot version...