优化,使用SoftReference作为value,在内存不够的时候,自动释放缓存

This commit is contained in:
zhouhao
2016-08-24 12:22:01 +08:00
parent ce07b7cc29
commit 83371cbc42

View File

@@ -59,8 +59,9 @@ public class SimpleMonitorCache extends ConcurrentMapCache implements MonitorCac
Object value = super.lookup(key);
if (value != null && value instanceof Reference) {
Reference reference = (Reference) value;
if (reference != null) return reference.get();
evict(key);
value = reference.get();
if (value == null)
evict(key);
}
return value;
}