LRUCache

最近最少使用缓存算法,顾名思义,通过抛弃最近不使用的数据。在Android里面的LRUCache和DisLruCache都是使用这种算法。分别对应的是内存缓存和硬盘缓存。

原理

通过LinkedHashMap双向链表来实现LRUCache的。LinkedHashMap有两种顺序,一种是LRU,而另一种则是按照插入顺序来读取。

LinkedHashMap的核心思想就是无论get还是put,都把数据插入链表尾端,然后当内存缓存达到最大值的时候,直接抛弃链表顶端数据即可。

原理图引用网上的,我已经找不到出处了。

-------------本文结束感谢您的阅读-------------
您的支持将是我最大的动力