【Visual Leak Detector】简介
说明
使用 VLD 内存泄漏检测工具辅助开发时整理的学习笔记。同系列文章目录可见 《内存泄漏检测工具》目录
1. 工具简介
Visual Leak Detector 简称 VLD,是 Windows 平台下用于 C/C++ 代码内存泄漏检测的开源工具,使用起来比较简单,配置好环境后包含头文件,就可以在运行时自动检测是否存在内存泄漏,并在指定位置(控制台或者文本文件)输出检测报告。该工具最初由 Dan Moulding 开发,但是后面 2.0 版本的特性都由 Arkadiy Shapkin 实现,在版本迭代历史中看到,最新的版本是 2017 年 10 月 17 日发布的 v2.5.1,开源遵循 LGPL-2.1 协议,在 Visual Studio Marketplace 中也有对 VLD 的一些介绍。该工具原则上只能在 MSVC 编译器、Debug 模式下使用。相比较于 Visual C++ 内置的内存泄漏检测工具,它有以下五大亮点:
- 可以输出内存泄漏点的调用堆栈,当符号信息完整时,还可以输出造成泄漏的代码所在文件及行号;
- 能检测出所在进程内的绝大多数内存泄漏,包括 COM-based leaks 和纯 Win32/Win64 下的 heap-based leaks;
- 可以手动设置不需检测的模块,比如 DLL 动态库或者主函数 EXE;
- 可以以 ASCII 码和十六进制的形式输出泄漏内存块中的全部数据;
- 可定制内存泄漏检测报告:可以设置将报告输出到控制台或者写入到指定的文本文件中、还可以设置检测报告的详细等级。
2. 工具的官网链接
Visual Leak Detector 官网:https://kinddragon.github.io/vld/。
Visual Leak Detector 旧官网:https://vld.codeplex.com,旧的托管在 CodePlex 上,但微软已经关闭了 CodePlex,网站已经打不开了。
3. 工具的帮助文档
Visual Leak Detector 在线帮助文档:https://github.com/KindDragon/vld/wiki。
Dan Moulding 旧版本的使用说明:https://www.codeproject.com/Articles/9815/Visual-Leak-Detector-Enhanced-Memory-Leak-Detectio,里面包含对 VLD 检测原理的简要介绍。
4. 工具的下载地址
Visual Leak Detector 官网下载地址:https://kinddragon.github.io/vld/, 点击 Download Installer 绿色按钮可下载工具的安装程序 vld-2.5.1-setup.exe。也可去 Git 仓库 releases 界面 下载安装程序或源码。
5. 工具的 Git 地址
Visual Leak Detector 的 GitHub 地址:https://github.com/KindDragon/vld。
Dan Moulding 旧版本的 GitHub 地址:https://github.com/dmoulding/vld。
版本 v2.5.1 只支持到 VS2015,有人对此做了升级,使其能支持到 VS2019,详见:https://github.com/oneiric/vld。
本文作者:木三百川
本文链接:https://www.cnblogs.com/young520/p/17238482.html
版权声明:本文系博主原创文章,著作权归作者所有。商业转载请联系作者获得授权,非商业转载请附上出处链接。遵循 署名-非商业性使用-相同方式共享 4.0 国际版 (CC BY-NC-SA 4.0) 版权协议。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧