1ccmalloc-Linux和Solaris下对C和C++程序的简单的使用内存泄漏和malloc调试库。
2Dmalloc-Debug Malloc Library
3Electric Fence-Linux分发版中由Bruce Perens编写的malloc()调试库。
4Leaky-Linux下检测内存泄漏的程序。
5LeakTracer-Linux、Solaris和HP-UX下跟踪和分析C++程序中的内存泄漏。
6MEMWATCH-由Johan Lindh编写,是一个开放源代码C语言内存错误检测工具,主要是通过gcc的precessor来进行。
7Valgrind-Debugging and profiling Linux programs, aiming at programs written in C and C++
8KCachegrind-A visualization tool for the profiling data generated by Cachegrind and Calltree
9IBM Rational PurifyPlus-帮助开发人员查明C/C++、托管NET、Java和VB6代码中的性能和可靠性错误。PurifyPlus 将内存错误和泄漏检测、应用程序性能描述、代码覆盖分析等功能组合在一个单一、完整的工具包中。
二、内存泄漏的简单介绍:
内存泄漏也称作“存储渗漏”,用动态存储分配函数动态开辟的空间,在使用完毕后未释放,结果导致一直占据该内存单元。直到程序结束。(其实说白了就是该内存空间使用完毕之后未回收)即所谓内存泄漏。
内存泄漏形象的比喻是“ *** 作系统可提供给所有进程的存储空间正在被某个进程榨干”,最终结果是程序运行时间越长,占用存储空间越来越多,最终用尽全部存储空间,整个系统崩溃。所以“内存泄漏”是从 *** 作系统的角度来看的。这里的存储空间并不是指物理内存,而是指虚拟内存大小,这个虚拟内存大小取决于磁盘交换区设定的大小。由程序申请的一块内存,如果没有任何一个指针指向它,那么这块内存就泄漏了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)