linux 下内存泄露检测工具valgrind的使用

内存泄露检测,使用工具 valgrind ,能够检测具体哪一行代码创建的内存泄露。
因该该工具只在程序结束时才统计信息,所以对于我们不退出的程序可以在运行一段时间后,直接ctrl+c停止,valgrind会统计目前的信息。
使用以下选项:
valgrind --leak-check=yes --trace-children=yes --show-reachable=yes --log-file=logname program args
说明:
valgrind是一个调试程序的工具集,可以检测Memcheck, Addrcheck, Cachegrind等。
--leak-check=yes 泄露检测信息输出方式有 [default: summary],选择summary,只有统计概要输出
--trace-children=yes 跟踪子进程,对于多线程可加可不加
--show-reachable=yes 如果这个禁用,那只检测那些已经丢失指针指向的那些内存块,有 [default: no]
--log-file=log  输出检测的日志文件,不加会直接显示在shell中,valgrind会在log名后加.pid
其他看man手册
手册地址http://valgrind.org/docs/manual/manual.html

你可能感兴趣的:(开发软件,linux,C,语言)