我知道Cache2k
的{{1}}仅在缓存条目自到期时才触发(当显式失效时不触发)。
CacheEntryExpiredListener
问题:我如何使用 Cache<String, Object> cache = Cache2kBuilder.of(String.class, Object.class)
.addListener(
(CacheEntryExpiredListener<String, Object>) (cache, entry)
-> handleExpired(entry.getKey(), entry.getValue()))
.expireAfterWrite(60, TimeUnit.SECONDS)
.build();
缓存实现?
答案 0 :(得分:0)
感谢@Ben Manes的提示:
Caffeine.newBuilder()
.removalListener((key, value, cause) -> {
if (cause.wasEvicted()) System.out.printf("key=%s, value=%s", key, value);
})
.expireAfterWrite(60, TimeUnit.SECONDS)
.build();