主要功能:
- 支持网络图片的加载和缓存处理,NSOperationQueue下载图片。
- 图片编解码
- 图片格式转换
- gif图片处理
5.Webp格式的图片处理 - 通过category给不同控件封装了类别,方便控件缓存图片
UML类图
SDWebImageClassDiagram.pngSDWebImageDownloader
两种图片下载方式:
下载方式.png
1. 默认最大下载并发数是6
使用了NSMapTable<KeyType, ObjectType> *weakCache; // strong-weak cache来缓存数据
效果:当外部不在持有对象了,键值对自动消除。
缓存的策略是:
如果超过缓存大小或者程序收到内存警告就将缓存清空。
ioQueue是一个串行队列
用来处理所有图片存储在磁盘
图片的转换和信号和alpha转换等等
@autoreleasepool:有大量的临时变量或者是大的文件或者图片的时候使用
磁盘存储:
当程序要中止运行的时候或者是程序将要进入后台的时候,对缓存数据按照时间排序,然后删除一半的磁盘数据
存储方式是:数组里面多个字典,字典里面存放的key、图像大小、时间date。
网友评论