原理
内存泄漏的检测原理就是把系统的malloc和free等内存操作函数覆盖掉,然后增加计数统计。再程序运行结束后,比对查看相同地址的内存指针的创建与销毁是否成对。排查避免内存未释放或者野指针等问题。当然valgrind会把当前异常内存指针的上下文也打印出来方便排查。
下载
https://valgrind.org/downloads/?src=www.discoversdk.com
安装并进行检测
tar -xvf valgrind-3.17.0.tar.bz2
cd valgrind-3.17.0/
./configure --prefix=/usr/local/valgrind
make
sudo make install
valgrind --tool=memcheck --leak-check=full --show-leak-kinds=all ./example
example 为待检测的程序
类似这种会把泄漏内存从申请的位置打印出来文章来源:https://www.toymoban.com/news/detail-839114.html
还会把泄漏出问题的也打印出来文章来源地址https://www.toymoban.com/news/detail-839114.html
到了这里,关于linux valgrind 内存检测的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!