static class ObjectProxyCache.Segment<T,A>
extends java.util.concurrent.locks.ReentrantLock
| Modifier and Type | Field and Description |
|---|---|
(package private) ObjectProxyCache<T,A> |
cache |
(package private) ObjectProxyCache.Entry<T>[] |
entryTable |
(package private) java.lang.ref.ReferenceQueue<java.lang.Object> |
referenceQueue |
(package private) int |
tableSize |
(package private) int |
threshold |
| Constructor and Description |
|---|
Segment(int capacity,
ObjectProxyCache<T,A> cache) |
| Modifier and Type | Method and Description |
|---|---|
private int |
count() |
private void |
expunge() |
(package private) T |
get(java.lang.Object object,
int hash) |
(package private) T |
getOrCreate(java.lang.Object object,
int hash,
A allocator) |
(package private) static <T,A> ObjectProxyCache.Segment<T,A>[] |
newArray(int size) |
(package private) void |
put(java.lang.Object object,
int hash,
T proxy) |
private ObjectProxyCache.Entry<T>[] |
rehash() |
private void |
remove(ObjectProxyCache.Entry<T>[] table,
int hash,
ObjectProxyCache.Entry<T> e) |
getHoldCount, getOwner, getQueuedThreads, getQueueLength, getWaitingThreads, getWaitQueueLength, hasQueuedThread, hasQueuedThreads, hasWaiters, isFair, isHeldByCurrentThread, isLocked, lock, lockInterruptibly, newCondition, toString, tryLock, tryLock, unlockfinal ObjectProxyCache<T,A> cache
final java.lang.ref.ReferenceQueue<java.lang.Object> referenceQueue
volatile ObjectProxyCache.Entry<T>[] entryTable
int tableSize
int threshold
Segment(int capacity,
ObjectProxyCache<T,A> cache)
private void expunge()
private void remove(ObjectProxyCache.Entry<T>[] table, int hash, ObjectProxyCache.Entry<T> e)
private int count()
private ObjectProxyCache.Entry<T>[] rehash()
void put(java.lang.Object object,
int hash,
T proxy)
T get(java.lang.Object object, int hash)
static final <T,A> ObjectProxyCache.Segment<T,A>[] newArray(int size)