iOS SDWebImage实现原理

Posted fengfeng159

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS SDWebImage实现原理相关的知识,希望对你有一定的参考价值。

1)当我门需要获取网络图片的时候,我们首先需要的便是URl没有URl什么都没有,获得URL后我们SDWebImage实现的并不是直接去请求网路,而是检查图片缓存中有没有和URl相关的图片,如果有则直接返回image,如果没有则进行下一步。

2)当图片缓存中没有图片时,SDWebImage依旧不会直从网络上获取,而是检查沙盒中是否存在图片,如果存在,则把沙盒中对应的图片存进image缓存中,然后按着第一步的判断进行。

3)如果沙盒中也不存在,则显示占位图,然后根据图片的下载队列缓存判断是否正在下载,如果下载则等待,避免二次下载。如果不存则创建下载队列,下载完毕后将下载操作从队列中清除,并且将image存入图片缓存中。

4)刷新UI(当然根据实际情况操作)将image存入沙盒缓存。

 

技术图片

 

以上是关于iOS SDWebImage实现原理的主要内容,如果未能解决你的问题,请参考以下文章

iOS SDWebImage实现原理

SDWebImage实现原理--两张图带你看懂

SDWebImage底层实现原理

关于SDWebimage的内部实现原理

yywebimage和sdwebimage哪个好

SDWebImage的实现原理(UIImageView+WebCach)