Linux内存泄漏的检查方法

2014-11-24 00:45:20 · 作者: · 浏览: 7

  1. 在需要内存泄漏检查的代码的开始调用void mtrace(void) (在mcheck.h中 有声明). mtrace为malloc等函数安装hook, 用于记录内存分配信息.在需要内存泄漏检查的代码的结束调用void muntrace(void).
  注意: 一般情况下不要调用muntrace, 而让程序自然结束. 因为可能有些释放内存代码要到muntrace之后才运行.


  2. 用debug模式编译被检查代码(-g或-ggdb)


  3. 设置环境变量MALLOC_TRACE为一文件名, 这一文件将存有内存分配信息.


  4. 运行被检查程序, 直至结束或muntrace被调用.