Class ConcurrentCache<K,​V>


  • public class ConcurrentCache<K,​V>
    extends Object
    Limited-size concurrent cache. The actual cleanup to keep the size limited is done once per CLEANUP_INTERVAL invocations of the protected method cleanUp. cleanUp method is called every time by put The maximum size is maintained approximately. Cleanup is not done if size is less than capacity + CLEANUP_INTERVAL / 2.
    Author:
    Oleg Mirzov
    • Constructor Detail

      • ConcurrentCache

        public ConcurrentCache​(int capacity)
    • Method Detail

      • get

        public V get​(Object key)
      • put

        public V put​(K key,
                     V value)
      • clear

        public void clear()
      • onEntryRemoval

        protected boolean onEntryRemoval​(K key)
        Parameters:
        key - the key of the node to test for removal and do finalization on
        Returns:
        true if removal is approved
      • cleanUp

        protected void cleanUp()