栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Java中简单易用的LRU缓存

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java中简单易用的LRU缓存

您可以使用linkedHashMap(Java 1.4+):

// Create cachefinal int MAX_ENTRIES = 100;Map cache = new linkedHashMap(MAX_ENTRIES+1, .75F, true) {    // This method is called just after a new entry has been added    public boolean removeEldestEntry(Map.Entry eldest) {        return size() > MAX_ENTRIES;    }};// Add to cacheObject key = "key";cache.put(key, object);// Get objectObject o = cache.get(key);if (o == null && !cache.containsKey(key)) {    // Object not in cache. If null is not a possible value in the cache,    // the call to cache.contains(key) is not needed}// If the cache is to be used by multiple threads,// the cache must be wrapped with pre to synchronize the methodscache = (Map)Collections.synchronizedMap(cache);


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/451393.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号