`
shootyou
  • 浏览: 82128 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

LinkedHashMap实现一个固定容量的基于最近最少使用算法的缓存类

阅读更多

固定容量的基于最近最少使用算法的LinkedHashMap.可用作简单缓存.使用方法与LinkedHashMap一致.

利用LinkedHashMap实现简单的缓存,必须实现removeEldestEntry方法,具体参见JDK文档.另外还加入了一个可重入的互斥锁定.

使用说明:LRU算法是LinkedHashMap本身通过双向链表来实现,当某个位置被使用(例如get操作),通过调整链表的指向将该位置调整到头位置,新加入的内容直接放在链表头,如此一来,最近被使用的内容就向链表头移动,需要替换时(已经达到容量时),链表最后的位置就是最近最少使用的位置。

源自:http://www.blogjava.net/killme2008/archive/2008/01/14/149645.html

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics