LruCache
说到缓存,不得不提LruCache。
- 为什么要用缓存?
比如你是个厨师,柴米油盐酱醋茶你要经常使用吧,你可以把它们放到小橱柜里。这很方便啊,下次使用直接从橱柜里面去拿。要是你把他们放到商店里(嘿嘿),拿岂不是每次做饭做菜,都得跑到千里之外的商店去买去拿?
你经常使用的数据,那就把它们存储到一个地方吧,这个地方可以是内存,也可以是硬盘。而内存的读写速度比硬盘快多了,所以内存缓存是比较常用的。下次想要使用某个东西,你可以先看内存里面有没有,有的话直接使用,岂不是很快。
- 为什么要使用LruCache?
内存是由容量限制的:这个屋子可以放十袋大米,过了几个月后,你有有新的几代大米要放进这个屋子里,你怎么办呢?把最陈最老的几代大米给扔了,然后你再把新的大米放进去。
ModelCache
ModelCache对LruCache进一步包装,对外暴露了几个方法
ModelLruCache
对ModelCache进行具体的实现。使用了LruCache
对数据的存取是根据id来实现的:
综上,利用lrucache对数据的缓存是多么的轻松~
SimpleMapCache
对ModelCache进行具体的实现。使用了HashMap
SparseArrayBasedCache
对ModelCache进行具体的实现。使用了SparseArray
网友评论