【发布时间】:2018-05-26 17:01:57
【问题描述】:
private Cache<Object, String> cache = CacheBuilder.newBuilder()
.concurrencyLevel(4)
.expireAfterAccess(24, TimeUnit.HOURS)
.initialCapacity(1024)
.maximumSize(1_00_000)
.build();
private ConcurrentMap<Object, String> cacheMap = cache.asMap();
这是我的代码,它很简单,它只是创建一个 Guava 地图缓存。 问题是,如果我从这个映射中删除()键,GC 是否能够从这个映射中收回内存?不使用弱引用(我不存储嵌套对象,如 Set 或 Map 等...)?
【问题讨论】: