SDWebImage源码分析

SDWebImage介绍

此图是SDWebImage的作者提供的,通过看方法名可以大致了解图片缓存实现的流程
SDWebImage源码分析_第1张图片
图片缓存流程图

SDWebImage源码分析_第2张图片
图片缓存关系图
UIView+WebCache类别:

所有设置图片的方法内部都会且仅调用此方法

SDWebImage源码分析_第3张图片
SDWebImage源码分析_第4张图片
UIView+WebCacheOperation类别:
    此类别用于绑定operation到当前对象,当指定key已绑定过operation时,会先取消并删除。
有以下方法:
    //绑定operation与key
    - (void)sd_setImageLoadOperation:(nullable id)operation forKey:(nullable NSString *)key
    //取消指定key的operation对象
    - (void)sd_cancelImageLoadOperationWithKey:(nullable NSString *)key
    //移除指定key
    - (void)sd_removeImageLoadOperationWithKey:(nullable NSString *)key
SDWebImageManager:

有如下属性:

SDWebImageDownloader:

SDWebImage源码分析_第5张图片
SDWebImageDownloaderOperation:

此文件是NSOperation的子类,实现可并发的图片下载任务


SDWebImage源码分析_第6张图片

SDWebImage源码分析_第7张图片
SDWebImage源码分析_第8张图片
SDImageCache:
SDWebImage源码分析_第9张图片

SDWebImage源码分析_第10张图片

你可能感兴趣的:(SDWebImage源码分析)