0
A
답변
0
당신은 만료되지해야 할 항목을-넣어 다시 예약 된 작업으로 expireAfterWrite
를 사용할 수 있습니다
Cache<String, MyClass> cache = CacheBuilder.newBuilder()
.expireAfterAccess(16L, TimeUnit.MINUTES)
.expireAfterWrite(16L, TimeUnit.MINUTES)
.build();
ScheduledExecutorService exitingScheduledExecutorService = MoreExecutors
.getExitingScheduledExecutorService(new ScheduledThreadPoolExecutor(1));
Runnable command =() -> cache.putAll(Maps.filterValues(cache.asMap(), myClass ->
!myClass.canExpire)));
exitingScheduledExecutorService.scheduleWithFixedDelay(command, 0, 15L, TimeUnit.MINUTES);
을