单片机C语言几种内存泄露总结

-回复 -浏览
楼主 2018-06-08 21:22:25
举报 只看此人 收藏本贴 楼主

吴鉴鹰单片机开发板地址



店铺:吴鉴鹰的小铺

地址:https://item.taobao.com/item.htm?_u=ukgdp5a7629&id=524088004171



日常项目中碰到的内存泄露无非有以下几种:

(1) 堆内存泄漏(Heap leak)。堆内存指的是程序运行中根据需要分配通过malloc,realloc new等从堆中分配的一块内存,再是完成后必须通过调用对应的 free或者delete 删掉。如果程序的设计的错误导致这部分内存没有被释放,那么此后这块内存将不会被使用,就会产生Heap Leak. 这是最常见的内存泄露。

(2)系统资源泄露(Resource Leak).主要指程序使用系统分配的资源比如 Bitmap,handle ,SOCKET等没有使用相应的函数释放掉,导致系统资源的浪费,严重可导致系统效能降低,系统运行不稳定

如果您创建一个可接合的POSIX线程,但是忘记联接它,其资源或私有内存一直保存在进程空间中,从未进行回收再利用。一定要联接可接合的线程;否则,可能会引起严重的内存泄漏问题。


喜欢本文的亲们欢迎点赞






 技术源于积累,成功来自执着

——单片机精讲吴鉴

我要推荐
转发到

友情链接