我已经实现了一个列表,其中异步加载了许多大图像。我正在使用一个实例NSCache
来存储这些UIImage
文件。当我向下滚动时,我加载了越来越多的图像。我进行了设置并分析了应用程序的分配情况,我注意到缓存似乎没有释放任何内存。“Live Bytes”字段已达到 165 MB 并且还在增加。缓存开始释放内存的限制是多少?还是我必须自己设置?
问问题
3094 次
2 回答
3
您需要通过调用[NSCache setCountLimit:]
和来指定缓存限制[NSCache setTotalCostLimit:]
。
请参阅[NSCache setObject:forKey:cost:]
为每个条目分配成本。
于 2013-09-19T16:12:50.047 回答
0
你应该使用
- (void)setCountLimit:(NSUInteger)lim;
设置 NSCache 限制
于 2013-09-19T16:12:02.100 回答