iphone - 有没有办法查看 iOS 应用程序自启动以来的最大内存使用量?

标签 iphone ios ipad memory-management instruments

如果有一个应用程序并且我们启动了它,我们可以使用 Instruments 每秒查看内存使用情况,但是如果在初始化过程中,内存瞬间飙升至 60MB,然后又下降,该怎么办? (例如一些大型图形上下文和位图以及 CALayers)。

有没有办法查看应用程序启动以来的最大值?我想到了一个穴居人的方法,即在我们分配了大的图形上下文、位图和CALayers之后添加一个虚拟循环,比如说一百万或一千万,这样内存使用量在几秒钟内是恒定的,并且可以可以在仪器中看到。

但是如果有5层,我们应该分配一个图形上下文,获取位图,并将其设置到该层,然后立即释放图形上下文,因为它不再需要了,这样会更好。然后我们继续处理下一个图形上下文、位图和图层等,而不是创建五个图形上下文、位图,并在最后释放所有五个。但要执行穴居人方法,我们需要在每次发布之前将虚拟循环添加到所有五个位置。有更好的方法吗?

最佳答案

使用泄漏或分配模板并选择分配工具。分配工具旁边有一个图表。单击图表上方的时间线并按住鼠标按钮。当您沿着时间线拖动时,Instruments 将显示该时间点分配的内存总量。

泄漏和分配模板之间的区别在于,泄漏模板将分配工具设置为跟踪所有分配,而分配模板将分配工具设置为仅跟踪事件分配。

关于iphone - 有没有办法查看 iOS 应用程序自启动以来的最大内存使用量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11989913/

相关文章:

iphone - iOS 6 中的 UIScrollView

iphone - 在 iOS 6 Flash IPA 中带有黑色背景的 PNG

iphone - 在 iOS SDK (iPad) 中使用 TouchXML 解析 SOAP 结果

ios - 单击电源按钮的系统通知或任何委托(delegate)方法 - iOS

ios - 处理按钮状态

iphone - iPad/iPhone 上的数据已加密?

iphone - 如何隐藏iphone顶部栏?

ios - 取消注册推送通知

ios - 具有透明背景的 UIModalPresentationFormSheet?

iphone - 在 iPhone 应用程序中创建配置文件