Luk*_*uka 14 ios nscache
我注意到当应用程序进入后台时,NSCache会清除其所有对象.这是预期的行为吗?有没有办法避免它?
当应用程序进入后台时,我预计当设备内存不足时,它会驱逐对象.
你知道有效的替代方案吗?
ace*_*egs 10
就我而言,当存储在NSCache中的对象不符合NSDiscardableContent协议时就会发生这种情况.当我添加所述协议时,当应用程序进入后台时逐出对象消失.
另外,基于我在这里发现的NSCache.m的源代码,在运行时永远不会删除不符合NSDiscardableContent协议的对象,即使应用程序需要更多内存并且应该驱逐它的一些元素.也许这就是为什么当应用程序进入后台时非NSDiscardableContent对象被驱逐的原因,因为这是他们被驱逐的好时机.
小智 1
这篇相关文章中的评论表明,当应用程序进入后台时,NSCache 会被清除。 NSCache 不会驱逐数据
归档时间:
13 年,3 月 前
查看次数:
4718 次
最近记录:
7 年,1 月 前