2009-03-04 51 views
8

过期的对象我想实现以下algorythm以上的Ehcache:检索中的Ehcache

  • 尝试从缓存
  • 获得元素如果元素没有过期
    • 服务值
  • 其他
    • 服务过期值
    • 刷新元素的背景

但我从来没有得到一个过期的元素(Element.isExpired())。我试图玩我的缓存配置(特别是TimeToLive和TimeToIdle),但我似乎无法让它按我的想法工作。我可以列出缓存中的键,但如果我“get()”过期的元素,我总是会得到一个空值。

我在做什么错?

+1

只是好奇,你有没有想出一个解决方案或替代方法呢? – 2011-03-11 00:11:29

回答

4

你没有做错任何事情。该文档说,获取过期的元素将从缓存中删除它并返回null。

我怀疑一个元素会过期的唯一时间是如果你有一个事件监听器监听元素过期事件,但我不能说我曾经测试过这个。

+0

注意事件监听器(notifyElementExpiry)。只有元素的关键是kown。根据API中的以下句子:因为元素已经过期,所以只知道元素的关键。刚刚遇到了这个问题。 – schoeggii 2012-11-01 16:25:28