Class AbstractPersistentConcurrentOffHeapMap<K,V>
java.lang.Object
java.util.AbstractMap<K,V>
org.terracotta.offheapstore.concurrent.AbstractConcurrentOffHeapMap<K,V>
org.terracotta.offheapstore.disk.persistent.AbstractPersistentConcurrentOffHeapMap<K,V>
- All Implemented Interfaces:
ConcurrentMap<K,V>, Map<K, V>, ConcurrentMapInternals, Persistent, HashingMap<K, V>, MapInternals
- Direct Known Subclasses:
PersistentConcurrentOffHeapHashMap
public abstract class AbstractPersistentConcurrentOffHeapMap<K,V>
extends AbstractConcurrentOffHeapMap<K,V>
implements Persistent
-
Nested Class Summary
Nested classes/interfaces inherited from class AbstractConcurrentOffHeapMap
AbstractConcurrentOffHeapMap.AggregateIterator<T>Nested classes/interfaces inherited from class AbstractMap
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K, V> -
Field Summary
FieldsFields inherited from class AbstractConcurrentOffHeapMap
segments -
Constructor Summary
ConstructorsConstructorDescriptionAbstractPersistentConcurrentOffHeapMap(Factory<? extends Segment<K, V>> segmentFactory) Create a concurrent map using a default number of segments.AbstractPersistentConcurrentOffHeapMap(Factory<? extends Segment<K, V>> segmentFactory, int concurrency) Create a concurrent map with a defined number of segments. -
Method Summary
Modifier and TypeMethodDescriptionvoidbootstrap(ObjectInput input) voidclose()voidflush()voidpersist(ObjectOutput output) protected static intreadSegmentCount(ObjectInput input) Methods inherited from class AbstractConcurrentOffHeapMap
clear, computeIfAbsentWithMetadata, computeIfPresentWithMetadata, computeWithMetadata, containsKey, containsValue, destroy, entrySet, fill, fill, get, getAllocatedMemory, getAndSetMetadata, getConcurrency, getDataAllocatedMemory, getDataOccupiedMemory, getDataSize, getDataVitalMemory, getIndexFor, getMetadata, getOccupiedMemory, getRemovedSlotCount, getReprobeLength, getSegmentInternals, getSegments, getSize, getTableCapacity, getUsedSlotCount, getValueAndSetMetadata, getVitalMemory, handleOversizeMappingException, keySet, put, put, putIfAbsent, readLockAll, readUnlockAll, remove, remove, removeAllWithHash, removeNoReturn, replace, replace, segmentFor, segmentFor, size, values, writeLockAll, writeUnlockAllMethods inherited from interface ConcurrentMap
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, replaceAll
-
Field Details
-
MAGIC
private static final int MAGIC- See Also:
-
-
Constructor Details
-
AbstractPersistentConcurrentOffHeapMap
-
AbstractPersistentConcurrentOffHeapMap
public AbstractPersistentConcurrentOffHeapMap(Factory<? extends Segment<K, V>> segmentFactory, int concurrency) Create a concurrent map with a defined number of segments.- Parameters:
segmentFactory- factory used to create the map segmentsconcurrency- number of segments in the map- Throws:
IllegalArgumentException- if the supplied number of segments is negative
-
-
Method Details
-
flush
- Specified by:
flushin interfacePersistent- Throws:
IOException
-
persist
- Specified by:
persistin interfacePersistent- Throws:
IOException
-
close
- Specified by:
closein interfacePersistent- Throws:
IOException
-
bootstrap
- Specified by:
bootstrapin interfacePersistent- Throws:
IOException
-
readSegmentCount
- Throws:
IOException
-