Class CachingParanamer.WithoutWeakReferences

  • All Implemented Interfaces:
    Paranamer
    Enclosing class:
    CachingParanamer

    public static class CachingParanamer.WithoutWeakReferences
    extends CachingParanamer
    This implementation has a better concurrent design (ConcurrentHashMap) which has a better strategy to implement concurrency: segments instead of synchronized. It also drops the underlying WeakHashMap implementation as that can't work with ConcurrentHashMap with some risk of growing permgen for a certain class of usage. So instead of wrapping via 'Collections.synchronizedMap(new WeakHashMap())' we now have 'new ConcurrentHashMap()'
    • Constructor Detail

      • WithoutWeakReferences

        public WithoutWeakReferences​(Paranamer delegate)
    • Method Detail

      • makeMethodCache

        protected java.util.Map<java.lang.reflect.AccessibleObject,​java.lang.String[]> makeMethodCache()
        Overrides:
        makeMethodCache in class CachingParanamer