Abh*_*ert 10 memory-leaks objective-c instruments ios
我正在开发一个iOS应用程序,它将创建许多小对象和浮动,并试图了解它消耗了多少内存使用量.
当我运行"分配"工具时,它说我有大约2MB的"实时字节",当我在应用程序中移动时,数字大致保持不变(当应用程序繁忙时,峰值达到3MB左右,但随后又下降低至2MB).
但是当我运行"Activity Monitory"乐器时,我的应用程序的"真实内存"一旦完成启动就会达到25MB,并且在我的CALayer中进行绘制时会快速增长.在不到一分钟的时间里,它超过了100MB.
为什么"Live Bytes"显示2MB,但"Real Memory"显示100MB?
我的CALayer正在绘制大量的路径,它将CPU固定为100%几秒钟才完成单个绘制操作,并且它将所有这些点从NSData对象加载到CGPoint值中,然后再次释放它们(NSData) object是被绘制点的压缩版本,存储从一个点到下一个点的增量,所以我将它保存在RAM中但不保留实际的CGPoints).
它还将绘图的结果缓存在UIImage中,并且它们保存在先进先出的数组中,该数组不会增长到超过500KB.
hot*_*aw2 13
真实内存号码包括您的应用程序已使用且已经发布的内存块,但操作系统尚未打算回收或重用(但如果需要,可以).实时内存是"脏"内存,如果您的应用程序正在运行且内存过于紧张,操作系统无法在不中断应用程序的情况下回收内存.
归档时间: |
|
查看次数: |
5368 次 |
最近记录: |