内存泄漏简介

1、内存泄漏也称作“存储渗漏”,用动态存储分配函数动态开辟的空间,在使用完毕后未释放,结果导致一直占据该内存单元。直到程序结束。即所谓内存泄漏。

2、简单的说就是申请了一块内存空间,使用完毕后没有释放掉。它的一般表现方式是程序运行时间越长,占用内存越多,最终用尽全部内存,整个系统崩溃。由程序申请的一块内存,且没有任何一个指针指向它,那么这块内存就泄露了。

3、一般我们常说的内存泄漏是指堆内存的泄漏。

堆内存是指程序从堆中分配的,大小任意的(内存块的大小可以在程序运行期决定),使用完后必须显示释放的内存。

应用程序一般使用mallocreallocnew等函数从堆中分配到一块内存,使用完后,程序必须负责相应的调用freedelete释放该内存块,否则,这块内存就不能被再次使用,我们就说这块内存泄漏了。

4、在使用内存时,我们应当秉承“谁申请,谁释放”的原则。

5、ccmallocLinuxSolaris下对CC++程序的简单的使用内存泄漏和malloc调试库。

参考[1]中给出了更多的调试库。

原文:

http://baike.baidu.com/view/1068433.htm

posted @ 2012-09-23 20:32  浪里飞  阅读(229)  评论(0编辑  收藏  举报