UIImage
具有自动响应低内存情况和释放其缓存表示的优化.从UIImage参考:
在内存不足的情况下,可以从UIImage对象中清除图像数据以释放系统上的内存.此清除行为仅影响UIImage对象内部存储的图像数据,而不影响对象本身.当您尝试绘制其数据已被清除的图像时,图像对象会自动从其原始文件重新加载数据.然而,这个额外的负载步骤可能会导致很小的性能损失.
一般来说,你应该把图像数据留在一个UIImage
.
如果您可以根据需要重新获取图像,则应考虑使用NSPurgeableData或您自己的图像对象,以及NSCache而不是NSDictionary
.NSCache
存储在其中的特别好的内存可以由操作系统自动释放,即使您被暂停,也避免在后台被终止.UIImage
你已经为你做了很多这样的事情,但是NSCache
你可以释放所有的数据而不仅仅是未压缩的数据.
归档时间: |
|
查看次数: |
4574 次 |
最近记录: |