windows客户端性能测试之内存泄露检查工具umdh.exe

Umdh 是 Debugging Tools for Windows 中的工具,在windbg的安装目录内,UMDH主要通过分析比较进程的Heap Stack trace信息来发现内存泄露的。

Umdh测试程序内存泄露的方法:

1.设置环境变量_NT_SYMBOL_PATH,系统属性-高级-环境变量或者命令行et _NT_SYMBOL_PATH=C:/symbols。把被测程序的Symbol files (.pdb) 文件和可执行文件放在同一目录,或者添加到_NT_SYMBOL_PATH。
_NT_SYMBOL_PATH=SRV*c:\symbols* http://msdl.microsoft.com/download/symbols;c:\myappsymbols

2. cmd命令行切换到windbg目录执行:gflags -i test.exe +ust,gflags也是Debugging Tools for Windows文件夹内的工具。

3.命令行执行umdh -p:1234 -f: umdh1.log,1234是被测程序的PID,执行成功目录内生成umdh1.log。如果PID错误命令行中提示Error: Failed to open process. Check for rights.

4.执行程序中怀疑有内存泄漏的功能,完成后执行命令umdh -p:1234 -f: umdh2.log。

5.然后运行umdh -d umdh1.log umdh2.log > cmp.txt。
-d参数:显示十进制数而不是十六进制,执行成功输出两个日志之间分配的差异保存在cmp.txt。

umdh详细信息: http://support.microsoft.com/kb/268343/zh-cn

Leave a Reply

电子邮件地址不会被公开。 必填项已用*标注