Package one.microstream.cache.types
Interface EvictionPolicy
- All Known Implementing Classes:
EvictionPolicy.Sampling
,EvictionPolicy.Searching
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface public interface EvictionPolicy
Function to pick the entries which should be evicted.
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
EvictionPolicy.Sampling
static class
EvictionPolicy.Searching
-
Method Summary
-
Method Details
-
pickEntriesToEvict
Select the entries which should be evicted. -
MaxCacheSizePredicate
-
LeastRecentlyUsedComparator
-
LeastFrequentlyUsedComparator
-
BiggestObjectsComparator
-
DefaultElementCount
static int DefaultElementCount() -
LeastRecentlyUsed
-
LeastRecentlyUsed
-
LeastRecentlyUsed
static EvictionPolicy LeastRecentlyUsed(_intReference elementCount, Predicate<CacheTable> evictionNecessity, Predicate<KeyValue<Object,CachedValue>> evictionPermission) -
LeastFrequentlyUsed
-
LeastFrequentlyUsed
-
LeastFrequentlyUsed
static EvictionPolicy LeastFrequentlyUsed(_intReference elementCount, Predicate<CacheTable> evictionNecessity, Predicate<KeyValue<Object,CachedValue>> evictionPermission) -
BiggestObjects
-
BiggestObjects
static EvictionPolicy BiggestObjects(_intReference elementCount, Predicate<CacheTable> evictionNecessity, Predicate<KeyValue<Object,CachedValue>> evictionPermission) -
FirstInFirstOut
-
FirstInFirstOut
static EvictionPolicy FirstInFirstOut(_intReference elementCount, Predicate<CacheTable> evictionNecessity, Predicate<KeyValue<Object,CachedValue>> evictionPermission) -
Sampling
static EvictionPolicy Sampling(_intReference elementCount, Predicate<CacheTable> evictionNecessity, Predicate<KeyValue<Object,CachedValue>> evictionPermission, Comparator<KeyValue<Object,CachedValue>> comparator) -
Searching
static EvictionPolicy Searching(_intReference elementCount, Predicate<CacheTable> evictionNecessity, Predicate<KeyValue<Object,CachedValue>> evictionPermission)
-