final class CopyOnWriteWeakMap<K,V>
extends java.util.AbstractMap<K,V>
implements java.util.concurrent.ConcurrentMap<K,V>
Modifier and Type | Class and Description |
---|---|
private static class |
CopyOnWriteWeakMap.Node<K,V> |
private static class |
CopyOnWriteWeakMap.Queue<K,V> |
Modifier and Type | Field and Description |
---|---|
private static FastCopyHashMap |
EMPTY |
private FastCopyHashMap<K,CopyOnWriteWeakMap.Node<K,V>> |
map |
private CopyOnWriteWeakMap.Queue<K,V> |
queue |
Constructor and Description |
---|
CopyOnWriteWeakMap() |
Modifier and Type | Method and Description |
---|---|
private FastCopyHashMap<K,CopyOnWriteWeakMap.Node<K,V>> |
cleanCopyForMod() |
private FastCopyHashMap<K,CopyOnWriteWeakMap.Node<K,V>> |
cleanCopyForRemove() |
void |
clear() |
boolean |
containsKey(java.lang.Object key) |
boolean |
containsValue(java.lang.Object value) |
private FastCopyHashMap<K,CopyOnWriteWeakMap.Node<K,V>> |
empty() |
java.util.Set<java.util.Map.Entry<K,V>> |
entrySet() |
V |
get(java.lang.Object key) |
boolean |
isEmpty() |
V |
put(K key,
V value) |
V |
putIfAbsent(K key,
V value) |
V |
remove(java.lang.Object key) |
boolean |
remove(java.lang.Object key,
java.lang.Object value) |
V |
replace(K key,
V value) |
boolean |
replace(K key,
V oldValue,
V newValue) |
int |
size() |
clone, equals, hashCode, keySet, putAll, toString, values
finalize, getClass, notify, notifyAll, wait, wait, wait
private final CopyOnWriteWeakMap.Queue<K,V> queue
private static final FastCopyHashMap EMPTY
private volatile FastCopyHashMap<K,CopyOnWriteWeakMap.Node<K,V>> map
private FastCopyHashMap<K,CopyOnWriteWeakMap.Node<K,V>> empty()
private FastCopyHashMap<K,CopyOnWriteWeakMap.Node<K,V>> cleanCopyForRemove()
private FastCopyHashMap<K,CopyOnWriteWeakMap.Node<K,V>> cleanCopyForMod()
public boolean remove(java.lang.Object key, java.lang.Object value)
public int size()
public boolean isEmpty()
public boolean containsKey(java.lang.Object key)
public boolean containsValue(java.lang.Object value)
public V get(java.lang.Object key)
public V remove(java.lang.Object key)
public void clear()