cache2k put()是否更新过期时间

Does cache2k put() update the expiry time

我在 API 文档中找不到答案,所以我想在这里问一下:

假设我有一个 cache2k 缓存

import org.cache2k.Cache;
import org.cache2k.CacheBuilder;
import java.util.concurrent.TimeUnit;
....

Cache<String, Integer> cache =
  CacheBuilder.newCache(String.class, Integer.class)
    .expiryDuration(1, TimeUnit.MINUTES)

并在其中放入一个项目

cache.put("item", 1)

该物品的有效期为一分钟。 30 秒后,我将此项目更新为

cache.put("item", 0)

这个项目的到期时间现在大约是 30 秒还是一分钟?

非常感谢每条有用的评论。也许我错过了文档中的答案或者有一些我不知道的标准...

此致

全球蠕虫

过期持续时间是条目存储在缓存中(例如通过 put 或 get() 和读取)到条目被视为过期之间的时间。过期条目不再有效,缓存不再返回。是否从内部缓存数据中删除过期条目取决于其他配置。

有些缓存会在新条目和更新后的过期时间之间产生差异。在 cache2k 中这是相同的。

因此,在第二次 put() 之后,过期时间被重置,条目在一分钟后过期。