Class LruCache<K,​V>

  • Type Parameters:
    K - the type of keys maintained by this cache
    V - the type of values maintained by this cache
    All Implemented Interfaces:
    Serializable, Cloneable, Map<K,​V>

    @API(status=INTERNAL,
         since="1.6")
    public class LruCache<K,​V>
    extends LinkedHashMap<K,​V>
    A simple LRU cache with a maximum size.

    This class is not thread-safe.

    Since:
    1.6
    See Also:
    Serialized Form
    • Constructor Detail

      • LruCache

        public LruCache​(int maxSize)
        Create a new LRU cache that maintains at most the supplied number of entries.

        For optimal use of the internal data structures, you should pick a number that's one below a power of two since this is based on a HashMap and the eldest entry will be evicted after adding the entry that increases the size to be above maxSize.