Class CopyOnWriteMap<K,V>
java.lang.Object
com.tangosol.util.CopyOnWriteMap<K,V>
- All Implemented Interfaces:
Map<K,V>
A thread-safe variant of
Map in which all mutating operations
(e.g. put, putAll) are implemented by making a fresh copy of
the underlying map.
Iterators over this map are guaranteed to produce a safe-iteration and
not to throw ConcurrentModificationException. The iterator will not
reflect concurrent additions, removals, or changes to this map.
Note: mutations on this map are costly, but may be more efficient than alternatives when "get" operations vastly outnumber mutations. All mutating operations are synchronized, so concurrent mutation can be prevented by holding synchronization on this object.
- Since:
- Coherence 3.7.2
- Author:
- pp 2011.09.17, rhl 2010.09.09 (from CopyOnWriteLongArray)
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected classA set of entries backed by this map.protected classA set of keys backed by this map. -
Constructor Summary
ConstructorsConstructorDescriptionCopyOnWriteMap(Class clazz) CopyOnWriteMap(Map<K, V> map) Construct a CopyOnWriteMap, initialized with the contents of the specified map. -
Method Summary
Modifier and TypeMethodDescriptionvoidclear()booleancontainsKey(Object oKey) booleancontainsValue(Object oValue) Create an instance ofMapbased on the contents of the provided map.entrySet()Return a set view of the underlying map.booleanReturn the internal map.inthashCode()instantiateMap(Class clazz) booleanisEmpty()keySet()Returns a Set view of the keys contained in the underlying map.voidprotected voidsetInternalMap(Map<K, V> map) Set the internal map.intsize()toString()values()Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
-
Constructor Details
-
CopyOnWriteMap
-
CopyOnWriteMap
-
-
Method Details
-
getInternalMap
-
setInternalMap
-
instantiateMap
-
copyMap
-
size
-
isEmpty
-
containsKey
- Specified by:
containsKeyin interfaceMap<K,V>
-
containsValue
- Specified by:
containsValuein interfaceMap<K,V>
-
get
-
put
-
remove
-
putAll
-
clear
-
keySet
-
entrySet
-
values
-
equals
-
hashCode
-
toString
-