摘要:
前言 上一篇已经讲了,如何自己实现一个LRU算法。但是那种只是最基本的实现了LRU的剔除策略,并不能在生产中去使用。因为Guava Cache中使用的是SoftReference去做的value实现,所以有必要将Java的四种引用类型在复习一下。 备注:以下代码使用的JVM配置为: -Xmx128M -Xms64M -XX:+PrintGCDetails Java的四种引用 强引用(St... 阅读全文
摘要:
前言 今天在看GuavaCache缓存相关的源码,这里想到先自己手动实现一个LRU算法。于是乎便想到LinkedHashMap和LinkedList+HashMap, 这里仅仅是作为简单的复习一下。 LRU LRU(Least recently used,最近最少使用)算法根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”。 代码实现原理... 阅读全文