1.檢測須要使用的工具:windbg工具。
檢測前,須要先安裝windbg工具。安裝了該工具後,會在安裝目錄下有一個umdh工具。
假設windbg安裝在如下目錄下:D:\Program Files\Debugging Tools for Windows (x86)
2.內存泄露檢測技巧
2.1 運行cmd窗口,將路徑設置到安裝路徑下;
2.2 在該cmd窗口中設置環境變量_NT_SYMBOL_PATH:
D:\Program Files\Debugging Tools for Windows (x86)>set _NT_SYMBOL_PATH="%windir%\symbols";D:\AppPath; //說明:AppPath爲應用程序絕對路徑
2.3 在該cmd窗口中設置標籤flags:
D:\Program Files\Debugging Tools for Windows (x86)>gflags -i appname.exe +ust
2.4 啓動應用程序appname.exe;
2.5 保存appname.exe的當前狀態:
D:\Program Files\Debugging Tools for Windows (x86)>umdh.exe -pn:appname.exe -f:FirstDump.txt
2.6 間隔一段時間後,繼續保存appname.exe的當前狀態:
D:\Program Files\Debugging Tools for Windows (x86)>umdh.exe -pn:appname.exe -f:SecondDump.txt
2.7 使用umdh.exe工具比較兩個dump文件:
D:\Program Files\Debugging Tools for Windows (x86)>umdh.exe FirstDump.txt SecondDump.txt -f:Result.txt
2.8 最後,經過打開result.exe文件,就能夠看到裏面顯示了代碼行中的那個語句出現了內存泄露。app