Class ConcurrentReferenceHashMap.Segment
java.lang.Object
java.util.concurrent.locks.ReentrantLock
org.springframework.util.ConcurrentReferenceHashMap.Segment
- All Implemented Interfaces:
Serializable, Lock
- Enclosing class:
ConcurrentReferenceHashMap<K,V>
A single segment used to divide the map to allow better concurrent performance.
- Since:
- 3.2
- Author:
- Phillip Webb, Juergen Hoeller, Brian Clozel
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclear()Clear all items from this segment.intgetCount()Return the total number of references in this segment.getReference(@Nullable Object key, int hash, ConcurrentReferenceHashMap.Restructure restructure) intgetSize()Return the size of the current references array.Methods inherited from class ReentrantLock
getHoldCount, getOwner, getQueuedThreads, getQueueLength, getWaitingThreads, getWaitQueueLength, hasQueuedThread, hasQueuedThreads, hasWaiters, isFair, isHeldByCurrentThread, isLocked, lock, lockInterruptibly, newCondition, toString, tryLock, tryLock, unlock
-
Constructor Details
-
Segment
public Segment(int initialSize, int resizeThreshold)
-
-
Method Details
-
getReference
public @Nullable ConcurrentReferenceHashMap.Reference<K,V> getReference(@Nullable Object key, int hash, ConcurrentReferenceHashMap.Restructure restructure) -
clear
public void clear()Clear all items from this segment. -
getSize
public int getSize()Return the size of the current references array. -
getCount
public int getCount()Return the total number of references in this segment.
-