mem*_*und 4 java caching caffeine
我知道Cache2k有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();
Run Code Online (Sandbox Code Playgroud)
问题:如何使用caffeine缓存实现实现相同的目标?
感谢@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();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1701 次 |
| 最近记录: |