Class ReadWriteLockedOffHeapClockCache<K,V>

Type Parameters:
K - the type of keys maintained by this map
V - the type of mapped values
All Implemented Interfaces:
ConcurrentMap<K,V>, ReadWriteLock, Map<K,V>, HashingMap<K,V>, MapInternals, PinnableCache<K,V>, PinnableSegment<K,V>, Segment<K,V>, StorageEngine.Owner
Direct Known Subclasses:
EvictionListeningReadWriteLockedOffHeapClockCache

public class ReadWriteLockedOffHeapClockCache<K,V> extends AbstractOffHeapClockCache<K,V>
A concurrent-read, exclusive-write off-heap clock cache.

This cache uses one of the unused bits in the off-heap entry's status value to store the clock data. This clock data is racily to updated during read operations. Since clock eviction data resides in the hash-map's table, it is correctly copied across during table resize operations.

The cache uses a regular ReentrantReadWriteLock to provide read/write exclusion/sharing properties.