Apple 的NSURLCache
课程有不错的文档,但没有说明它使用什么缓存算法。是 LRU、LFU 还是完全其他的东西?
我正在为 iPad 开发,并希望通过使用(默认似乎是 0) 来利用NSURLCache
的磁盘缓存功能来缓存照片。[NSURLCache setDiskCapacity]
这个值的上限是多少?
磁盘容量的上限似乎是设备的磁盘容量。我看不到任何有关“软件强加”限制的信息。
至于缓存算法,似乎没有任何苹果提供的文档,但我确实找到了这个。严格来说,这不是您所要求的,但它确实可以让您深入了解正在发生的事情。我相信这是使用多队列缓存算法(?),它按大小排序,然后按最近最少使用。
如果你在做一些依赖于了解缓存算法的事情,你可以用这个做一些事情。
我猜你将不得不编写一些测试用例来解决这个问题。(当然,请注意,参数可能会随着 iOs 版本、硬件平台等而变化。)