内存泄漏查找----------VLD

VLD是VC++ 提供的内存泄漏查找工具 只能用于VC++编译器!

开始

下载地址:https://vld.codeplex.com/releases  ,下载完直接安装即可;

我下载的是v2.5.1

安装后就需要配置库文件和头文件;

下面提供在在Qt中,简单配置方式:

找到VDL安装目录下的bin目录下的include(我的路径是 C:\Program Files (x86)\Visual Leak Detector\include)中的头文件全部copy到Qt 编译器(VC++编译器才行)include文件中;(我这里的路径是:C:\Qt\Qt5.9.1\5.9.1\msvc2015_64\include)  再将VDL安装目录下的lib目录中的Win64(64位机)目录中的库文件copy到Qt 编译器中的lib目录中;

配置完成后就可以在代码中添加头文件#include <vld.h>

程序在debug模式下编译的时候会检查内存泄漏 ,如果有编译完会将内容输出到应用程序输出窗口,在release模式不会链接VLD库;

输出内容(没有泄漏):

Visual Leak Detector read settings from: C:\Program Files (x86)\Visual Leak Detector\vld.ini //配置文件位置

Visual Leak Detector Version 2.5.1 installed. //版本信息

No memory leaks detected. //没有检测到内存泄漏

Visual Leak Detector is now exiting. //VLD退出

输出内容(有内存泄漏):

Visual Leak Detector read settings from: C:\Program Files (x86)\Visual Leak Detector\vld.ini

Visual Leak Detector Version 2.5.1 installed.

WARNING: Visual Leak Detector detected memory leaks!

---------- Block 8 at 0x0000000000307B00: 48 bytes ---------- //在这里有泄漏  48 bytes

Leak Hash: 0x1497BE72, Count: 1, Total 48 bytes

Call Stack (TID 1712):

ucrtbased.dll!malloc()

f:\dd\vctools\crt\vcstartup\src\heap\new_scalar.cpp (19): untitled12.exe!operator new() + 0xA bytes

c:\users\administrator\documents\untitled12\mainwindow.cpp (11): untitled12.exe!MainWindow::MainWindow() + 0xA bytes;//说明了泄漏位置,在mainwindow.cpp的第11行,可执行文件是untitled12.exe,在MainWindow()这个函数中泄漏;

c:\users\administrator\documents\untitled12\main.cpp (8): untitled12.exe!main() + 0xC bytes

c:\users\qt\work\qt\qtbase\src\winmain\qtmain_win.cpp (104): untitled12.exe!WinMain() + 0xE bytes

f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl (99): untitled12.exe!invoke_main()

f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl (253): untitled12.exe!__scrt_common_main_seh() + 0x5 bytes

f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl (296): untitled12.exe!__scrt_common_main()

f:\dd\vctools\crt\vcstartup\src\startup\exe_winmain.cpp (17): untitled12.exe!WinMainCRTStartup()

kernel32.dll!BaseThreadInitThunk() + 0xD bytes

ntdll.dll!RtlUserThreadStart() + 0x21 bytes

Data:

18 BA 9E 3F 01 00 00 00 A0 7B 30 00 00 00 00 00 ...?.... .{0.....

D8 BB 9E 3F 01 00 00 00 00 00 CD CD CD CD CD CD ...?.... ........

00 00 00 00 00 00 00 00 D0 7C 30 00 00 00 00 00 ........ .|0.....

Visual Leak Detector detected 1 memory leak (100 bytes).  //一共找到了1处内存泄漏的位置

Largest number used: 813 bytes.

Total allocations: 813 bytes.

Visual Leak Detector is now exiting.

使用VLD查找内存泄漏相关推荐

  1. java 内存泄漏 工具_Java剖析工具JProfiler入门使用教程:查找内存泄漏的方法

    JProfiler的内存视图会话提供了内存使用情况的动态更新视图以及分配点的信息视图.所有的视图都有几个聚集层并且能够显示现有存在的对象和作为垃圾回收的对象.本文主要介绍如何意识到内存泄漏以及查找内存 ...

  2. ios react_查找内存泄漏React本机应用程序(iOS)

    ios react by Jignesh Kakadiya 通过Jignesh Kakadiya 查找内存泄漏React本机应用程序(iOS) (Finding memory leaks react- ...

  3. 使用UMDH查找内存泄漏

    预览: 使用UMDH分析查找内存泄漏技术 上半年对内存泄漏查找作了一个总结,主要是使用crt的debug版本查找内存泄漏,但是存在的缺陷是只能定位到用户代码中自己分配的内存,对于使用其他库中分配的内存 ...

  4. QT使用VLD检测内存泄漏

    QT使用VLD检测内存泄漏 下载VLD VLD版本:vld-2.5.1-setup 下载地址:https://kinddragon.github.io/vld/ 安装VLD 直接双击安装,选择安装位置 ...

  5. 使用Xcode的memory graph查找内存泄漏

    由donnywals于2019年12月9日发布 代码无法充分发挥功能的原因很多. 在一篇文章中,我向您展示了如何使用Time Profiler来测量代码中每种方法所花费的时间,以及如何分析结果. 尽管 ...

  6. qt5使用内存检测工具vld查看内存泄漏

    什么是vld? Visual Leak Detector是一款用于Visual C++的免费的内存泄露检测工具.相比较其它的内存泄露检测工具,它在检测到内存泄漏的同时,还具有如下特点: 1. 可以得到 ...

  7. Umdhtools.exe: 如何使用 umdh.exe 来查找内存泄漏

    使用 UMDH 之前 如果您认为您遇到内存泄漏, 应注意, 内存泄漏可能不它们似乎什么. 您可能发现内存泄漏是不满足内存泄漏, 但是性能增强. 例如, MicrosoftJet 数据库引擎会消耗大量内 ...

  8. 利用Android Studio的 Monitor Memory 查找内存泄漏

    App开发总会遇到内存泄漏的情况,在Eclipse时代我们一般使用MAT来配合分析,Android Studio会方便一些,因为它自带了一个Monitor Memory.下面我们来看看怎么使用这个工具 ...

  9. Qt Creator 中使用VLD检测内存泄漏

    简介 Visual Leak Detector是一款用于Visual C++的免费的内存泄露检测工具.相比较其它的内存泄露检测工具,它在检测到内存泄漏的同时,还具有如下特点:可以得到内存泄漏点的调用堆 ...

最新文章

  1. 国内IDC即将迎来快速增长时期
  2. Vmware iSCSi 配置
  3. Webservice初接触
  4. MySQL Connector/ODBC 5.2.4 发布
  5. 马冬晗学习计划表_一年时间提升学习和工作能力,我做对了这3点
  6. html的frame加背景图片,tkinter第二章(添加图片,背景图片)
  7. leetcode lcp2 分式化简
  8. python之入门,你好,中国
  9. 增强环路现象!? 为你揭示云计算魔力!
  10. pp助手苹果版_苹果一键刷机助手app免费版下载-一键刷机精灵下载手机版
  11. Spark环境搭建(保姆级教程)
  12. 苹果计算机快捷键设置,苹果电脑怎么改快捷键
  13. 前奈飞 CTO 两年吃回扣上百万,将面临数十年监禁
  14. android offtime编程,OFFTIME - 做功课就憋玩手机了! - Android 应用 - iPad - 【最美应用】...
  15. cpua55和a53哪个好_也来谈谈目前最新的A55架构
  16. C# 使用正则表达式提取文字
  17. 更改设置并对计算机自定义,电脑别乱玩 禁用Win8.1自定义设置项
  18. 网络直播不应只是秀场,新的场景机会在哪?
  19. 利用百度AI开放平台的语言处理基础技术(Python)
  20. 【张小平工作日志】同一目录下,Maven resource使用include与exclude实现过滤

热门文章

  1. Spring源码分析——汇总全集
  2. Error !!ftp服务在禁锢本地用户在家目录后,提示远程主机关闭连接
  3. 电脑c盘哪些文件可以删除
  4. Nagios监控DELL服务器硬件
  5. allegro蛇形线
  6. 人人宝:应该依靠健康保险治疗精神疾病吗?
  7. 深度学习的57个专业术语(转载)
  8. 计算机梦想未来,学史力行 梦想未来——计算机科学与技术学院开展2021届本科毕业生党员主题党日活动...
  9. 从零开始的 PhotoShop CEP 6开发教程「 1 」配置开发环境
  10. Iterated Kalman Filter(IKF/IEKF)总结