小编Eva*_*say的帖子

使用定时过期后,番石榴缓存在x timeunit后不会过期

我有一个问题,我的番石榴缓存没有到期.我将把我的代码留在下面.缓存只会在我再次写入缓存时到期.但是我从javadocs中获得的关于定时到期的内容是它应该在写完后到期x timeunit.任何帮助,将不胜感激.

    private static final Cache<UUID, RainbowWrapper> RAINBOWS = CacheBuilder.newBuilder()
        .removalListener(new RemovalListener<UUID, RainbowWrapper>() {
            @Override
            public void onRemoval(RemovalNotification<UUID, RainbowWrapper> notification) {
                CoreAPI.debug("Removing rainbow: " + notification.getKey().toString());
                RainbowWrapper wrapper = notification.getValue();
                for (UUID uuid : wrapper.getUuids()) {
                    CoreAPI.debug("Removing entity: " + uuid);
                    Bukkit.getWorlds().get(0).getEntitiesByClasses(Item.class, ArmorStand.class).stream()
                            .filter(entity -> entity.getUniqueId().equals(uuid))
                            .forEach(org.bukkit.entity.Entity::remove);
                }
            }
        }).expireAfterWrite(FADE_TIME, TimeUnit.SECONDS).build();
Run Code Online (Sandbox Code Playgroud)

java caching guava

2
推荐指数
1
解决办法
1807
查看次数

标签 统计

caching ×1

guava ×1

java ×1