活动监测仪器 ios
Posted
技术标签:
【中文标题】活动监测仪器 ios【英文标题】:activity monitor instruments ios 【发布时间】:2011-08-15 16:36:45 【问题描述】:我注意到活动监视器的使用与工具中的分配无关。我知道这是因为分配并没有考虑很多事情。
我想知道 1 个应用程序应该真正使用多少内存。即什么被认为是合理的?在分配工具中,我的应用程序以 2.0mb heap 运行。在内存监视器中,它有时会在回落到 40 之前达到 50 的峰值。这正常吗?我知道 iphone 有 128mb/256mb。对于一个简单的应用程序来说,40 mb 不是很多,因为 safari 似乎只使用 35 mb 堆。
谢谢。
【问题讨论】:
【参考方案1】:它看起来确实很高,但这取决于您的应用在这些峰值出现时执行的操作。您是否正在加载大量图形?声音?
也许您可以提供更多信息,说明您的应用的功能以及这些峰值出现的时间
【讨论】:
基本上应用程序拍照压缩并发送到服务器。 我还注意到应用程序在拍摄第 60 张图像后崩溃,内存警告 65% + 杀死应用程序。 听起来你分配了很多,无法弄清楚我头顶上的确切问题,但也许你应该查看文件大小,如果可能的话,释放已经发送的照片你的记忆,如果可能的话 嗯,好吧,我正在使用 jpeg 压缩,它返回默认自动发布的 NSData。所以不确定我还能做些什么。但是我应该能够拍摄无限数量的照片吗?我也在重新缩放来自相机的图像。 我也运行了分配,看不出有什么问题。只有 2-3 mb 的峰值,UIImage 的峰值只有 300-400kb。【参考方案2】:图像通常存储在仪器无法计数的某个地方。您只会看到 CGImageRef 的一个小句柄等。Apple 需要更新 Instruments(这将需要相当多的技巧......)以包括这样的内存。
EG:以 4 字节/像素 ==> 4MB 的速度加载 1000 像素 x 1000 像素的图像,但您会看到某些 CGimageRef 或类似位置的 50 字节。所以还要计算 CGImageRefs。
【讨论】:
以上是关于活动监测仪器 ios的主要内容,如果未能解决你的问题,请参考以下文章
仪器(泄漏/活动监视器/时间分析器等)无法启动 - 发生了啥?