当元素到期时,使用信令功能到期映射

时间:2012-05-08 13:53:58

标签: java data-structures collections

任何人都可以指出我在Java中称之为Ticking collection/Map的良好实现(如果存在)。集合中的元素有一些到期时间。当集合的特定元素到期时,集合会引发某种警报或调用处理程序。

我看到了一个过期地图的Guava实现,它自动删除已经过期的密钥。

Expiring map

1 个答案:

答案 0 :(得分:4)

guava支持驱逐回调:

    Cache<String, String> cache = CacheBuilder.newBuilder()
            .expireAfterAccess(100, TimeUnit.SECONDS)
            .removalListener(new RemovalListener<Object, Object>() {
                public void onRemoval(RemovalNotification<Object, Object> objectObjectRemovalNotification) {
                    //do something
                }
            })
            .build();