美文网首页
glide 缓存

glide 缓存

作者: 会疼的小石头 | 来源:发表于2019-06-05 13:50 被阅读0次

    缓存类型

    Glide的缓存类型分为两大类,一类是Resource缓存,一类是Bitmap缓存。

    Resource缓存

    为什么需要缓存图片Resource,很好理解,因为图片从网络加载,将图片缓存到本地,当需要再次使用时,直接从缓存中取出而无需再次请求网络。

    三层缓存

    Glide在缓存Resource使用三层缓存,包括:

    一级缓存:缓存被回收的资源,使用LRU算法(Least Frequently Used,最近最少使用算法)。当需要再次使用到被回收的资源,直接从内存返回。

    二级缓存:使用弱引用缓存正在使用的资源。当系统执行gc操作时,会回收没有强引用的资源。使用弱引用缓存资源,既可以缓存正在使用的强引用资源,也不阻碍系统需要回收无引用资源。

    三级缓存:磁盘缓存。网络图片下载成功后将以文件的形式缓存到磁盘中。

    Bitmap缓存

    Bitmap所占内存大小

    Bitmap所占的内存大小由三部分组成:图片的宽度分辨率、高度分辨率和Bitmap质量参数。公式是:Bitmap内存大小 = (宽pix长pix)质量参数所占的位数。单位是字节B。

    Bitmap压缩质量参数

    质量参数决定每一个像素点用多少位(bit)来显示:

    ALPHA_8就是Alpha由8位组成(1B)

    ARGB_4444就是由4个4位组成即16位(2B)

    ARGB_8888就是由4个8位组成即32位(4B)

    RGB_565就是R为5位,G为6位,B为5位共16位(2B)

    相关文章

      网友评论

          本文标题:glide 缓存

          本文链接:https://www.haomeiwen.com/subject/lvnjxctx.html