ios - NSCache 什么时候释放缓存对象?

标签 ios objective-c uiimage nsdata nscache

我已经实现了一个列表,其中异步加载了许多大图像。我正在使用 NSCache 的实例来存储这些 UIImage 文件。当我向下滚动时,我加载了越来越多的图像。我设置了它并分析了应用程序的分配情况,我注意到缓存似乎没有释放任何内存。 “Live Bytes”字段已增加到 165 MB 并且还在增加。缓存开始释放内存的限制是多少?还是必须自己设置?

最佳答案

您需要通过调用 [NSCache setCountLimit:] 来指定缓存限制和 [NSCache setTotalCostLimit:] .

参见 [NSCache setObject:forKey:cost:]为每个条目分配成本。

关于ios - NSCache 什么时候释放缓存对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18899762/

相关文章:

ios - 搜索 NSDictionary 的 NSArray(其中包含 NSDictionary 的 NSArray,重复)

ios - 从 Storyboard连接到 Swift View Controller 文件的 UITextField 输入

iphone - 如何去除iPhone应用程序中图像的背景?

iOS 9 改变了 View 加载行为

ios - 加快像素迭代

iphone - 在 xib View 上拖动对象或其 Controller 有什么区别?

ios - Objective-C日历网格

iphone - 将带有 exif 的原始图像从 ALAsset 对象写入文档目录文件夹

ios - UIImageView 宽度和 UIScreen 宽度

ios - 循环背景音乐?