内存泄露(Memory leak)指的是,在程序中动态申请的内存,在使用完后既没有释放,又无法被程序的其他部分访问。内存泄露是在开发大型程序中最令人头疼的问题,以至于有人说,内存泄露是无法避免的。其实不然,防止内存泄露要从良好的编程习惯做起,另外重要的一点就是要加强单元测试(Unit Test),而valgrind就是这样一款优秀的工具。
(1):程序发生内存泄露的条件及各种情况:
a: 内存申请忘记释放(malloc,free();new,delete);
b:申请内存大小不正确((char*)malloc(0));
c:free()函数使用不正确(int a[];free(a)释放了栈区参数);
d:一段内存释放多次(1个malloc,多个free());
(2):检测程序是否发生内存泄露:
方法有二:
a:模仿用户长时间使用设备;
b:针对某个具体的测试用例。
-
内存泄漏
+关注
关注
0文章
40浏览量
9413 -
单元测试
+关注
关注
0文章
50浏览量
3337
发布评论请先 登录
在OpenVINO? C++代码中启用 AddressSanitizer 时的内存泄漏怎么解决?
快问快答:泄漏等级有哪些?含阀门气密性检测原理方法和解决方案

推荐两款菲力尔气体泄漏检测神器
内存泄漏检测工具Sanitizer介绍
快问快答: 工厂阀门泄漏故障了怎么检出?检测方法全攻略来了!

科普:产品密封泄漏试验等级评定标准及方法详解

听音辨漏:快速检测真空及负压泄漏

如何检测DDR内存性能
如何检测电脑的RAM内存
正压密封试验仪YY/T 0681.5-2010内压法检测粗大泄漏(气泡法)

评论