gpt4 book ai didi

java - 咖啡因 - 仅在创建时间后缓存值如何过期

转载 作者:行者123 更新时间:2023-12-01 19:49:57 28 4
gpt4 key购买 nike

Caffeine 有 expiresAfterWrite 方法,可以查看上次写入时间。我希望它只查看创建时间。因此,当第一个条目到来时,条目将在固定的时间后过期,而无需查看该条目的更新次数。这可能吗?

最佳答案

是的,但需要使用更高级的Expiry API。在下面的示例中,新创建的条目具有固定的 5 分钟生存期。这是通过在更新或读取时返回 currentDuration 来完成的。

LoadingCache<Key, Graph> graphs = Caffeine.newBuilder()
.expireAfter(new Expiry<Key, Graph>() {
public long expireAfterCreate(Key key, Graph graph, long currentTime) {
return TimeUnit.MINUTES.toNanos(5);
}
public long expireAfterUpdate(Key key, Graph graph,
long currentTime, long currentDuration) {
return currentDuration;
}
public long expireAfterRead(Key key, Graph graph,
long currentTime, long currentDuration) {
return currentDuration;
}
})
.build(key -> createExpensiveGraph(key));

关于java - 咖啡因 - 仅在创建时间后缓存值如何过期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51779879/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com