gpt4 book ai didi

ios - 调试和发布配置之间的内存使用差异

转载 作者:行者123 更新时间:2023-11-29 03:08:02 24 4
gpt4 key购买 nike

我正在使用 taskInfo 以编程方式获取我的应用程序使用的内存量。代码基本上是

    kern_return_t result = task_info(mach_task_self(), TASK_BASIC_INFO, (task_info_t)&info, &num);
if (result == KERN_SUCCESS ) {
memoryUsed = (double)(info.resident_size/1000000.0);

当我在 Debug 配置上运行我的应用程序时,它报告使用的内存比在 Distribution 上运行它时要多得多(大约 100MB 的差异)。由于链接了其他一些第三方库,我不确定他们是否在做一些奇怪的事情。

我的问题是假设我的应用程序没有做任何奇怪的事情,有如此巨大的差异是否正常?

附言: 我也在使用 cocos2d 但我认为这很安全。

最佳答案

我想说这是预期的行为。至少在我比较 DEBUG 和 RELEASE 构建之间的内存使用情况的所有项目中一直都是这样。

一个原因显然是在 DEBUG 构建中正在完成更多的事情,并且可能会保存在内存中。主要调试你的和框架的东西(即cocos2d)。各种断言和日志也会增加更多(临时)内存使用量。连接的调试器和调试服务也可能会消耗应用程序的额外内存。

没什么可担心的。仅在发布版本中测量内存使用情况,因为这最终将在用户设备上运行。

关于ios - 调试和发布配置之间的内存使用差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22548506/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com