一 内部流程顺序:
0 站位图:图片下载是耗时操作,下载前可先显示站位图;
1 内存:以url作为key,去内存中查找;
2 磁盘:内存中没有,以url的MD5作为key,去磁盘中查找,找到则缓存在内存中;
3 下载:
*是否下载中:磁盘中也没有,如果此图片没有在下载中,则异步下载;如果在下载中,则继续下载;
*下载完成后:分别把图片保存在内存和磁盘中;
4 清除缓存:
*收到内存警告,清理图片缓存;
*退到后台,或者应用结束时收到通知,清理过期的磁盘图片;
二 问题:
1 为什么要存磁盘?
收到内存警告,或者用户自己清理了缓存,如果磁盘中没有,也无需重新下载,直接可以从磁盘中读取。