图片的三级缓存

三级缓存
 1, 一级缓存 内存缓存 访问快,效率高,可能导致内存溢出 
   从上往下,级别越来越低
     强引用,只有没有任何引用的时候才会被虚拟机回收 
     软引用,当内存不足时,虚拟机会自动回收软引用引用的对象 
     弱引用,当对象创建完成后,虚拟机会不停的检测内存,当检测到弱引用,检测到就回收
     虚引用,虚拟机随时回收




            

在安卓3.0之后,这个不推荐 ,推荐使用lrucache 
  最近使用的原则
当内存不足时,回收不常使用或者最近没有使用的对象

 2.二级缓存 ,本地缓存,缓存到安卓的文件里面去,访问稍快,节省流量

3.三级缓存,网络缓存


实现流程 :根据url找一张图片,具体怎么找:
   1.从内存找图片,如果找到,就直接展示,如果找不到,就从本地找,
  2.本地缓存找,找到就展示.找不到就开始访问网络 
  3.访问网络找图片  
       3.1 网络找到图片,缓存图片到本地和内存 
       3.2 展示图片 
 

  

1.从内存中获取图片 
   new lrucache 




2.本地获取图片


    本地存储图片的方式 



3.网络获取图片
           






posted @ 2016-08-07 21:44  杨伟乔  阅读(303)  评论(0编辑  收藏  举报