前言
Android的三级缓存最主要的就是内存缓存和硬盘缓存,这两种都用到了 LruCache算法。
1. Android中的缓存策略
缓存策略包含缓存的添加、获取、删除。之所以要删除是因为不管是内存缓存还是硬盘缓存,其缓存大小都是有限的,缓存一旦满了的时候再想为其添加缓存,就必须删除一些旧的缓存以腾出空间来添加新的缓存。
Lru由此而诞生,Lru是Least Recently Used,近期最少使用的算法,其核心思想就是当缓存满了的时候,会优先淘汰近期最少使用的缓存对象。
Lru缓存有两种,LruCache和DiskLruCache,分别实现内存缓存和硬盘缓存
2. LruCache的介绍
原理是把最近最少使用的对象用强引用(对象引用方式)存储在LinkedHashMap中