官方文档-NSCache

2017-02-22  本文已影响37人  Liberalism

SDKs

iOS 4.0+
macOS 10.6+
tvOS 4.0+
watchOS 2.0+

NSCache对象是一个可变的集合,存储键值对,类似于NSDictionary对象。 NSCache类提供了一个编程接口,用于添加和删除对象以及基于缓存中对象的总成本和数量设置释放策略。

概览

NSCache对象在几个方面不同于其他可变集合

通常使用NSCache对象临时存储具耗时的临时数据的对象。因为它们的值不必重新计算,所以重用这些对象可以提供性能优势。 而且如果内存紧张,则可以被丢弃。 如果被丢弃,它们的值必须在需要时重新计算。

具有可以在不使用时可以丢弃的子组件的对象可以采用NSDiscardableContent协议来提高缓存驱逐行为。 默认情况下,如果缓存中的NSDiscardableContent对象被丢弃,则会自动删除它们,但可以更改此自动删除策略。 如果一个NSDiscardableContent对象被放入缓存,缓存在它被删除时调用discardContentIfPossible

属性解读

1.name : 缓存的名称
2.countLimit : 缓存的最大条数
3.totalCostLimit : 缓存最大占用空间
4.evictsObjectsWithDiscardedContent :是否自动丢弃可以释放的数据
5.delegate :代理

方法解读


// 为特定的键值赋值
- setObject:forKey: 

// 设置缓存中指定键的值,并将键值对与指定的储存大小相关联。
- setObject:forKey:cost:

// 移除指定缓存
- removeObjectForKey:

// 移除全部缓存
removeAllObjects

上一篇下一篇

猜你喜欢

热点阅读