C语言 百分网手机站

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

时间:2020-09-07 16:45:53 C语言 我要投稿

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

  C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的.编程语言。那么有关C语言的内存泄露情况是怎样的呢?以下仅供参考!

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

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

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

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

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