Class LRUCache<K,V>
- java.lang.Object
-
- io.undertow.server.handlers.cache.LRUCache<K,V>
-
public class LRUCache<K,V> extends Object
A non-blocking cache where entries are indexed by a key.To reduce contention, entry allocation and eviction execute in a sampling fashion (entry hits modulo N). Eviction follows an LRU approach (oldest sampled entries are removed first) when the cache is out of capacity.
This cache can also be configured to run in FIFO mode, rather than LRU.
- Author:
- Jason T. Greene, Stuart Douglas
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classLRUCache.CacheEntry<K,V>
-
Field Summary
Fields Modifier and Type Field Description static intMAX_AGE_NO_CACHINGMax age 0, indicating that entries expire upon creation and are not retained;static intMAX_AGE_NO_EXPIRYMage age -1, entries dont expire
-
-
-
Field Detail
-
MAX_AGE_NO_CACHING
public static final int MAX_AGE_NO_CACHING
Max age 0, indicating that entries expire upon creation and are not retained;- See Also:
- Constant Field Values
-
MAX_AGE_NO_EXPIRY
public static final int MAX_AGE_NO_EXPIRY
Mage age -1, entries dont expire- See Also:
- Constant Field Values
-
-