【Visual Leak Detector】简介
  TYVKPVrvy5BM 2023年11月02日 86 0
C++

说明

使用 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

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  8Tw5Riv1mGFK   2024年05月01日   80   0   0 C++
  BYaHC1OPAeY4   2024年05月08日   56   0   0 C++
  yZdUbUDB8h5t   2024年05月05日   43   0   0 C++
  oXKBKZoQY2lx   2024年05月17日   57   0   0 C++