SDWebImage简单的实现原理

一、SDWebImage 实现原理:

1、首先让占位图先显示。

2、SDWebImageManage交给 SDImageCache 先从内存中查找是否有图片,会以URL作为数据的索引在内存中查找是否有对应的缓存。

3、如果有缓存,通过代理进行回调展示图片。

4、如果内存缓存中没有找到,生成 NSInvocationOperation 添加到队列,会通过MD5处理过的key来硬盘中查询是否有图片。

5、如果找到了,就把硬盘中的数据加载到内存中并显示。

6、如果没有找到,会生成一个下载器向远程服务器发出请求开始下载图片。

7、图片下载由NSURLConnection 来做,实现相关delegate来判断图片下载中、下载完成和下载失败。

8、下载后的图片会被保存到内存和硬盘。

9、进行界面展示。

你可能感兴趣的:(SDWebImage简单的实现原理)