我对 NSCache 很陌生。
我有一个 API 调用会产生多个对象。如何将这些对象存储在 NSCache 中,这样我就不需要再次调用 API。
NSCache 中可以存储多少数据。将数据存储在 NSCache 中是否有特定限制。
请帮我。
我对 NSCache 很陌生。
我有一个 API 调用会产生多个对象。如何将这些对象存储在 NSCache 中,这样我就不需要再次调用 API。
NSCache 中可以存储多少数据。将数据存储在 NSCache 中是否有特定限制。
请帮我。
NSCache 对象是一个类似于集合的容器或缓存,用于存储键值对,类似于 NSDictionary 类。
这是 Nick Zitzmann 的很好的解释。
NSCache 与 NSMutableDictionary 类似,区别在于:
1. 保证线程安全。
2.访问速度慢很多。
3.它可能会不时抛出物体。您可以设置成本和限制,但不能保证一定会遵守。
4. 它不是免费连接到 CoreFoundation 中的任何东西。
5. 无法查询缓存中的对象数量。
6. 不能枚举缓存。我只能推荐使用 NSCache 来存储你不会关心的对象,如果它们被任意破坏。如果对象不能被销毁,或者访问速度是个问题,那么使用 NSMutableDictionary 代替。
来自与您相关的文档
NSCache 有很多自动删除策略,确保它不会使用过多的系统内存。如果其他应用程序需要内存,系统会自动执行这些策略。调用时,这些策略会从缓存中删除一些项目,从而最大限度地减少其内存占用。