将“复制期间剥离调试符号”设置为 NO 后经常出现内存警告

Posted

技术标签:

【中文标题】将“复制期间剥离调试符号”设置为 NO 后经常出现内存警告【英文标题】:Often memory warning after setting "Strip Debug Symbols During Copy" to NO 【发布时间】:2012-04-27 16:50:16 【问题描述】:

我已将“复制期间剥离调试符号”构建参数设置为 NO。它使我的二进制应用程序的大小增加了 0.5 MB。令人惊讶的是,我开始经常在我的应用程序中看到内存警告。会是这个原因吗?

在这种情况下,我可以将其设置回 YES。

【问题讨论】:

更正了错字。 0.5 MB。 哦,那是一个非常不同的大小。在这种情况下,调试符号不是问题的根源。运行带有泄漏和分配的工具,看看可以减少什么。 您可能在代码中做一些枚举或以其他方式访问符号的操作,在这种情况下,拥有更多符号将意味着更多内存。如果没有,您最多只能将内存使用量增加 0.5MB(将整个应用程序分页到内存中使用的空间,因为它大了 0.5MB)。 【参考方案1】:

调试符号不是问题,这是非常确定的。

要找出内存问题的根本原因,请使用以下方法:

    Xcode Analyzer - 甚至在不运行您的应用程序的情况下(除其他外)即可定位大多数潜在的内存泄漏。

    仪器:泄漏仪器 - 将定位所有剩余的泄漏问题。

在极少数情况下,您可能会从这两种工具中得到误报。但请放心,根据我的经验,这些通常不是误报,而是发现您的代码/应用程序的问题。

【讨论】:

令人惊讶的是,在将此属性设置为 YES 后,我发现仪器中分配的内存显着减少。它减少了 1.5 MB,我暂时没有看到内存警告。所以我把这个参数改回YES。

以上是关于将“复制期间剥离调试符号”设置为 NO 后经常出现内存警告的主要内容,如果未能解决你的问题,请参考以下文章

acer笔记本开机出现no bootable device?

升级win10系统后,经常出现win10无法识别usb设备怎么解决?

virtualbox虚拟机设置好后,运行的时候出现fatal:no bootable medium found!system halted。怎么解决?

遥感影像上存在no data ,怎么将其设置为0值

出现nobootabledevice错误如何解决?

thinkphp5 伪静态后出现No input file specified.问题