CachedIntrospectionResults uses SoftReference instead of WeakReference for non-cache-safe entries

Issue: SPR-11867
This commit is contained in:
Juergen Hoeller
2014-07-02 00:22:24 +02:00
parent e9ecaf6f4a
commit f27b9498be

View File

@@ -21,7 +21,7 @@ import java.beans.IntrospectionException;
import java.beans.Introspector; import java.beans.Introspector;
import java.beans.PropertyDescriptor; import java.beans.PropertyDescriptor;
import java.lang.ref.Reference; import java.lang.ref.Reference;
import java.lang.ref.WeakReference; import java.lang.ref.SoftReference;
import java.util.HashSet; import java.util.HashSet;
import java.util.Iterator; import java.util.Iterator;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
@@ -196,7 +196,7 @@ public class CachedIntrospectionResults {
} }
results = new CachedIntrospectionResults(beanClass); results = new CachedIntrospectionResults(beanClass);
synchronized (classCache) { synchronized (classCache) {
classCache.put(beanClass, new WeakReference<CachedIntrospectionResults>(results)); classCache.put(beanClass, new SoftReference<CachedIntrospectionResults>(results));
} }
} }
} }