maven:
<dependency>
<groupId>net.jodah</groupId>
<artifactId>expiringmap</artifactId>
<version>0.5.8</version>
</dependency>
put 的时候 可以设置时间,并且可以更新时间
代码:
//为Map中单个元素设置过期时间
@Test
public void test4() throws InterruptedException {
ExpiringMap<String, String> map = ExpiringMap.builder().variableExpiration()
.expirationPolicy(ExpirationPolicy.CREATED)
.build();
//ExpirationPolicy.ACCESSED 设定为调用此key一次 就刷新一次过期时间,如不写就从put 的时候开始计算时间
map.put("key1","value1",ExpirationPolicy.ACCESSED,10000,TimeUnit.MILLISECONDS);
Thread.sleep(6000);
//System.out.println("key1:"+map.get("key1"));
Thread.sleep(6000);
System.out.println("key1:"+map.get("key1"));
}