开发Mac OS X或iOS应用程序时,经常会遇到一个问题,那就是从因特网下载的图片应如何来缓存。首先能想到的好办法就是把内存中的图片保存到字典里,这样的话,稍后使用时就无须再次下载了。有些程序员会不假思索,直接使用NSDictionary来做(准确来说,是使用其可变版本),因为这个类很常用。其实,NSCache类更好,它是Foundation框架专为处理这种任务而设计的。
NSCache胜过NSDictionary之处在与,当系统资源将要耗尽时,它可以自动删减缓存。如果采用普通的字典,那就要自己编写挂钩,在系统发出“低内存”(low memory)通知时手工删除缓存。而NSCache则会自动删减,由于其是Foundation框架的一部分,所以与开发者相比,它能在更深的层面上插入挂钩。此外,NScache还会先行删减“最久未使用的”(leaserecently used)对象。
第五十条: 构建缓存时选用NSCache而非NSDictionary
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 开发中,有时需要将因特网上下载的图片保存到字典中,这样的话稍后使用就无须再次下载了,其实用NSCache类更好,它...
- 在开发Mac OS X或iOS时,从因特网下载的图片该如何缓存,一般想到的是将内存中的图片保存在字典(NSDict...
- 47. 熟悉系统框架 开发者会碰到的主要框架就是Foundation,像是NSObject、NSArray、NSD...
- NSCache胜过NSDictionary之处在于,当系统资源将要耗尽时,它可以自动删减缓存。如果采用普通的字典,...
- NSCache胜过NSDictionary的之处在于: 当系统资源将要耗尽时,它可以自动删减缓存。 NSCache...