Class MemStatementIteratorCache
java.lang.Object
org.eclipse.rdf4j.sail.memory.model.MemStatementIteratorCache
A cache for MemStatementIterator that tracks how frequently an iterator is used and caches the iterator as a list
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionfinal intprivate final com.google.common.cache.Cache<MemStatementIterator, List<MemStatement>> private final ConcurrentHashMap<MemStatementIterator, Integer> private static final org.slf4j.Logger -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) MemStatementIteratorCache.CachedIterationgetCachedIterator(MemStatementIterator iterator) (package private) voidvoid(package private) booleanshouldBeCached(MemStatementIterator iterator)
-
Field Details
-
logger
private static final org.slf4j.Logger logger -
CACHE_FREQUENCY_THRESHOLD
public final int CACHE_FREQUENCY_THRESHOLD -
iteratorFrequencyMap
-
iteratorCache
-
-
Constructor Details
-
MemStatementIteratorCache
public MemStatementIteratorCache(int cacheFrequencyThreshold)
-
-
Method Details
-
invalidateCache
public void invalidateCache() -
incrementIteratorFrequencyMap
-
shouldBeCached
-
getCachedIterator
-