Class EvictionListeningWriteLockedOffHeapClockCache<K,V>
- java.lang.Object
-
- java.util.AbstractMap<K,V>
-
- org.terracotta.offheapstore.OffHeapHashMap<K,V>
-
- org.terracotta.offheapstore.AbstractLockedOffHeapHashMap<K,V>
-
- org.terracotta.offheapstore.AbstractOffHeapClockCache<K,V>
-
- org.terracotta.offheapstore.WriteLockedOffHeapClockCache<K,V>
-
- org.terracotta.offheapstore.eviction.EvictionListeningWriteLockedOffHeapClockCache<K,V>
-
- All Implemented Interfaces:
java.util.concurrent.ConcurrentMap<K,V>,java.util.concurrent.locks.ReadWriteLock,java.util.Map<K,V>,HashingMap<K,V>,MapInternals,PinnableCache<K,V>,PinnableSegment<K,V>,Segment<K,V>,StorageEngine.Owner
public class EvictionListeningWriteLockedOffHeapClockCache<K,V> extends WriteLockedOffHeapClockCache<K,V>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.terracotta.offheapstore.AbstractLockedOffHeapHashMap
AbstractLockedOffHeapHashMap.LockedEntryIterator, AbstractLockedOffHeapHashMap.LockedEntrySet, AbstractLockedOffHeapHashMap.LockedKeyIterator, AbstractLockedOffHeapHashMap.LockedKeySet
-
Nested classes/interfaces inherited from class org.terracotta.offheapstore.OffHeapHashMap
OffHeapHashMap.EncodingIterator, OffHeapHashMap.EncodingSet, OffHeapHashMap.EntryIterator, OffHeapHashMap.EntrySet, OffHeapHashMap.HashIterator<T>, OffHeapHashMap.KeyIterator, OffHeapHashMap.KeySet
-
-
Field Summary
Fields Modifier and Type Field Description private EvictionListener<K,V>listener-
Fields inherited from class org.terracotta.offheapstore.OffHeapHashMap
ENCODING, ENTRY_BIT_SHIFT, ENTRY_SIZE, hashtable, hashTablePage, KEY_HASHCODE, modCount, removedSlots, reprobeLimit, RESERVED_STATUS_BITS, size, STATUS, STATUS_REMOVED, STATUS_USED, storageEngine, tableSource
-
-
Constructor Summary
Constructors Constructor Description EvictionListeningWriteLockedOffHeapClockCache(EvictionListener<K,V> listener, PageSource source, StorageEngine<? super K,? super V> storageEngine)EvictionListeningWriteLockedOffHeapClockCache(EvictionListener<K,V> listener, PageSource source, StorageEngine<? super K,? super V> storageEngine, int tableSize)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanevict(int index, boolean shrink)-
Methods inherited from class org.terracotta.offheapstore.WriteLockedOffHeapClockCache
getLock, readLock, writeLock
-
Methods inherited from class org.terracotta.offheapstore.AbstractOffHeapClockCache
evictable, getAndPin, getEvictionIndex, hit, isPinned, putPinned, setPinning, storageEngineFailure, tableExpansionFailure
-
Methods inherited from class org.terracotta.offheapstore.AbstractLockedOffHeapHashMap
clear, computeIfAbsentWithMetadata, computeIfPresentWithMetadata, computeWithMetadata, containsKey, createEntrySet, createKeySet, destroy, fill, fill, get, getAndSetMetadata, getEncodingForHashAndBinary, getMetadata, getValueAndSetMetadata, installMappingForHashAndEncoding, put, put, putIfAbsent, remove, remove, removeAllWithHash, removeMapping, removeNoReturn, replace, replace, shrink, size
-
Methods inherited from class org.terracotta.offheapstore.OffHeapHashMap
added, createEncodingSet, encodingSet, entrySet, fill, freePendingTables, getAllocatedMemory, getAtTableOffset, getDataAllocatedMemory, getDataOccupiedMemory, getDataSize, getDataVitalMemory, getEntryAtTableOffset, getOccupiedMemory, getRemovedSlotCount, getReprobeLength, getSize, getSlotForHashAndEncoding, getStorageEngine, getTableCapacity, getUsedSlotCount, getVitalMemory, indexFor, indexFor, isAvailable, isPresent, isRemoved, isRemoved, isTerminating, isTerminating, isThiefForTableAllocations, keySet, readLong, readLong, removeAtTableOffset, removed, shrinkTable, spread, tryIncreaseReprobe, updated, updateEncoding
-
Methods inherited from class java.util.AbstractMap
clone, containsValue, equals, hashCode, isEmpty, putAll, toString, values
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.concurrent.ConcurrentMap
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
-
Methods inherited from interface org.terracotta.offheapstore.HashingMap
removeAllWithHash
-
Methods inherited from interface java.util.Map
clear, containsKey, containsValue, entrySet, equals, get, hashCode, isEmpty, keySet, put, putAll, remove, size, values
-
Methods inherited from interface org.terracotta.offheapstore.MapInternals
getAllocatedMemory, getDataAllocatedMemory, getDataOccupiedMemory, getDataSize, getDataVitalMemory, getOccupiedMemory, getRemovedSlotCount, getReprobeLength, getSize, getTableCapacity, getUsedSlotCount, getVitalMemory
-
Methods inherited from interface org.terracotta.offheapstore.Segment
computeIfAbsentWithMetadata, computeIfPresentWithMetadata, computeWithMetadata, destroy, fill, fill, getAndSetMetadata, getMetadata, getValueAndSetMetadata, put, removeNoReturn, shrink
-
-
-
-
Field Detail
-
listener
private final EvictionListener<K,V> listener
-
-
Constructor Detail
-
EvictionListeningWriteLockedOffHeapClockCache
public EvictionListeningWriteLockedOffHeapClockCache(EvictionListener<K,V> listener, PageSource source, StorageEngine<? super K,? super V> storageEngine)
-
EvictionListeningWriteLockedOffHeapClockCache
public EvictionListeningWriteLockedOffHeapClockCache(EvictionListener<K,V> listener, PageSource source, StorageEngine<? super K,? super V> storageEngine, int tableSize)
-
-
Method Detail
-
evict
public boolean evict(int index, boolean shrink)- Specified by:
evictin interfaceStorageEngine.Owner- Overrides:
evictin classAbstractOffHeapClockCache<K,V>
-
-