C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何在ARM体系结构上检查C应用程序中的内存泄漏大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在用C语言编写使用ARM体系结构的设备.我想检查我的应用程序中的内存泄漏.正如在我的设备中,iam工作(ARM体系结构)不支持Valgrind ..@R_475_9447@使用其他选项来检查我的应用程序中的内存泄漏.有没有办法检查内存泄漏……或者请指导我在编写代码时必须采取的预防措施,以避免内存泄漏,尤其是在处理字符串和动态内存分配时…?

平台:Linux,gcc编译器

解决方法

不要使用动态内存分配.至少我们不在航空电子系统中.

我通常使用其中之一

> malloc仅在初始化时所需的内存.
如果失败则应用程序需要更多内存.这用于驱动程序需要跟踪N个对象但需要根据项目/应用程序配置N的情况.
在操作系统上,我使用最大内存值提供给应用程序的操作系统.
>使用免费和已用项目的链接列表
如果项目具有固定大小,则效果最佳.然后在初始化时,驱动程序读取确定它将支持的最大项目的配置项.这可以是来自内核空@L_873_7@malloc.如果内存不足,则需要正确指定系统资源.
>使用应用程序可以分配的内存池,但仅作为整体删除.
在用于航空电子设备的嵌入式OpenGL系统中,我们允许应用程序创建可变大小的对象.池耗尽后,我们返回OUT_OF_MEMORY错误.我们不允许应用程序随机删除对象,因为这会导致内存碎片和非确定性运行时行为.我们允许他们删除每个对象并根据需要重新创建它们.这具有确定性行为.

根据系统的需要,一切都有某种约束或限制.这也适用于字符串数据.

大佬总结

以上是大佬教程为你收集整理的如何在ARM体系结构上检查C应用程序中的内存泄漏全部内容,希望文章能够帮你解决如何在ARM体系结构上检查C应用程序中的内存泄漏所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。