计算机科学中,内存泄漏是一种资源泄漏。发生这种情况时,不再需要的内存未被释放,计算机程序以错误的方式管理内存分配。当对象存储在内存中但不能被运行代码无法访问时,也可能发生内存泄漏。内存泄漏的症状类似于许多其他问题,通常它只能由能够访问程序源代码的程序员来诊断。接下来和您详细说一下“内存泄漏是什么意思和内存泄漏和内存溢出有什么区别。”

 

一、内存泄漏是什么意思

内存泄漏(存储渗漏)是用动态存储分配函数动态开辟的空间,在使用完毕后未释放,结果导致一直占据该内存单元,直到程序结束。内存泄漏是一种很难定位和跟踪的错误。发生内存泄漏的代码只有在某些特定环境或操作过程下才会发生。

内存泄漏是什么意思

二、内存泄漏和内存溢出有什么区别

泄漏就是内存申请后,用完没有释放,造成可用内存越来越少。
溢出指用户实际的数据长度超过了申请的内存空间大小,导致覆盖了其他正常数据,容易造成程序异常,严重的,攻击者可以以此获取程序控制权。

内存泄漏和内存溢出有什么区别