我正在使用番石榴CacheBuilder,通常我可以在上次读取或最后写入之后使记录过期:
LoadingCache<String, CacheObject> myCache = CacheBuilder.newBuilder()
.expireAfterWrite(10, TimeUnit.MINUTES)
.build(
new CacheLoader<String, CacheObject>() {
public CacheObject load(String cacheKey) {
return ...
}
});
但是,我需要在第一次写入后使记录过期。这意味着如果以后再用新值重写该记录:
myCache.put(existingCacheKey, newCacheObject);
还是我想根据第一次写入使记录过期。
看起来CacheBuilder默认不支持它。我想知道是否有一种方法可以使它在第一次写入时过期。