CacheLoader 教程
1. LoadingCache
LoadingCache是指用CacheLoader建立的缓存。想要使用LoadingCache的话,就是使用方法get(K)
。如果不在LoadingCache里面的话,就会使用CacheLoader做一次加载;如果有的话就直接拿回结果了。
2. 使用CacheLoader以及LoadingCache
LoadingCache<String, String> loadingCache = CacheBuilder.newBuilder()
.build(new CacheLoader<String, String>() {
@Override
public String load(final String s) throws Exception {
return response;
}
});
- CacheLoader在使用newBuilder()创造新实例的时候还可以做很多的设置,比如
expireAfterAccess(long duration, TimeUnit unit)
- 在每个entry被创建以后,经过一段固定的时间做自动移除操作
maximumSize(long size)
- 定义cache能有的最大entry数量
Reference
- https://www.baeldung.com/guava-cacheloader
- https://stackoverflow.com/questions/43993731/what-is-a-loadingcache
- https://guava.dev/releases/21.0/api/docs/com/google/common/cache/LoadingCache.html
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 stone2paul@gmail.com
文章标题:CacheLoader 教程
文章字数:184
本文作者:Leilei Chen
发布时间:2020-02-05, 01:07:09
最后更新:2020-02-05, 01:07:32
原始链接:https://www.llchen60.com/CacheLoader-%E6%95%99%E7%A8%8B/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。