由于NSCache是一个黑匣子,如下所示:
1)由于内存压力而移除对象时,不会发送系统通知。
2)缓存不会被OS整体清除,而是会在达到内存阈值后逐个对象进行缩减。
除了检查缓存对象是否为空之外,还有没有其他更好的方法来检查缓存对象,如下所示:
NSArray *array = [[MyCache sharedCache] someArray];
if (array.count > 0)
{
//you're ok
}
else
{
[self repopulateCache];
}
MyCache是您创建的类吗?使用NSCache,您可以objectForKey
检查是否还有东西。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句