Xcode - Iphone 内存限制

Posted

技术标签:

【中文标题】Xcode - Iphone 内存限制【英文标题】:Xcode - Iphone Memory limitation 【发布时间】:2012-06-12 06:06:21 【问题描述】:

一个应用程序可以使用的最大内存是多少?请找到带有此消息的仪器屏幕截图。什么是实际内存和虚拟内存限制?

【问题讨论】:

下次您想要包含图像时,请使用编辑器的图像按钮。您使用的共享主机相当烦人,因为您需要解决验证码才能查看图像。 @ThiefMaster,感谢您编辑我的问题先生。 【参考方案1】:

我不认为我可以直接回答你的问题,但有几个想法:

    就可用物理 RAM 而言,正如您从 Wikipedia overview of iPhone models 中看到的那样,原始 iPhone 和 3G 为 128MB,3G 为 256MB,4 和 4S 为 512MB。

    根据 Apple 的 ios App Programming Guide,虚拟内存不是来自物理磁盘/存储的分页内存(就像您在桌面操作系统中看到的那样),所以我假设 iOS 只是将物理 RAM 分配为虚拟内存到应用程序,少于操作系统(和任何后台应用程序)消耗的量。此外,请参阅 Apple 在其Memory Usage Performance Guidelines 中对虚拟内存的讨论。

    最后,请参阅SO post 关于确定可用内存的信息。作为数据点,在运行 iOS 5.1.1 的开发 3GS 上,该 SO 帖子中的算法报告约 228MB 总可用内存和约 100MB 可用内存(在一个相当简单的故事板 ARC 测试项目中,有大量视图控制器,其中只有两个在测试可用内存时被积极使用)。如果这是任何迹象,它看起来像是产生了大部分物理 RAM,大概是为 SpringBoard 等 iOS 应用程序使用了一些内存。如果我在后台运行其他用户应用程序,我的测试应用程序报告的内存相应减少(总“可用”和“免费”......例如,在后台运行 Facebook,我损失了 20-30MB),但是如果我手动终止了其他应用程序,则内存已恢复并可用于我的内存测试应用程序。我假设如果我当前应用程序的可用内存充分减少,iOS 会为我关闭在后台运行的其他应用程序,但我没有对此进行测试。

归根结底,应用程序可用的内存似乎是 (a) 特定设备型号规定的物理 RAM 的函数; (b) 还有哪些其他应用程序仍在后台运行。

【讨论】:

以上是关于Xcode - Iphone 内存限制的主要内容,如果未能解决你的问题,请参考以下文章

确定 JavaScript for iPhone Web 应用程序中可用的可用内存?

xcode打包测试

Xcode 确认 iPhone 6s 是 2GB 内存,iPad Pro 4GB

如何解决 xcode(仪器)中的 iPhone 应用程序内存泄漏

Xcode 确认三款全新 iPhone 都是 4GB 运行内存

苹果开发工具Xcode确认iPhone6s内存为2G