C++内存检查工具valgrind

Posted 左手程序右手拳

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++内存检查工具valgrind相关的知识,希望对你有一定的参考价值。

安装

apt-get install valgrind

注意在Ubuntu 16.10上,需要python2为默认python版本。


运行

启动C++程序前加上valgrind即可。

valgrind ./builder/bin/wind_tunnel_d -c ./config_pdc.js


检查报告

C-c C-c退出进程,可以看到如下报告:

==16085== Memcheck, a memory error detector
==16085== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==16085== Using Valgrind-3.12.0.SVN and LibVEX; rerun with -h for copyright info
==16085== Command: ./builder/bin/wind_tunnel_d -c ./config_pdc.js
==16085== 
  C-c C-c==16085== 
==16085== HEAP SUMMARY:
==16085==     in use at exit: 56,708 bytes in 206 blocks
==16085==   total heap usage: 553,865 allocs, 553,659 frees, 35,269,883 bytes allocated
==16085== 
==16085== LEAK SUMMARY:
==16085==    definitely lost: 0 bytes in 0 blocks
==16085==    indirectly lost: 0 bytes in 0 blocks
==16085==      possibly lost: 0 bytes in 0 blocks
==16085==    still reachable: 56,708 bytes in 206 blocks
==16085==                       of which reachable via heuristic:
==16085==                         newarray           : 14,440 bytes in 29 blocks
==16085==         suppressed: 0 bytes in 0 blocks
==16085== Rerun with --leak-check=full to see details of leaked memory
==16085== 
==16085== For counts of detected and suppressed errors, rerun with: -v
==16085== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)


以上是关于C++内存检查工具valgrind的主要内容,如果未能解决你的问题,请参考以下文章

valgrind--CPP程序内存泄露检查工具

如何检查 C++ 代码中的内存泄漏。有没有检查内存泄漏的免费工具[重复]

Linux 内存泄漏检查工具 valgrind

内存泄漏分析valgrind

valgrind - 检查程序中的内存泄漏问题

常用的内存泄漏检查工具