public class TSynchronizedDoubleObjectMaps extends Object
| Modifier and Type | Method and Description |
|---|---|
static <V> TDoubleObjectMap |
wrap(TDoubleObjectMap
Returns a synchronized (thread-safe) Trove map backed by the specified map.
|
public static <V> TDoubleObjectMap<V> wrap(TDoubleObjectMap <V> m)
It is imperative that the user manually synchronize on the returned map when iterating over any of its collection views:
TDoubleObjectMap m = TSynchronizedDoubleObjectMaps.wrap( new TDoubleObjectHashMap() );
...
TDoubleSet s = m.keySet(); // Needn't be in synchronized block
...
synchronized( m ) { // Synchronizing on m, not s!
TDoubleIterator i = s.iterator(); // Must be in synchronized block
while ( i.hasNext() )
foo( i.next() );
}
Failure to follow this advice may result in non-deterministic behavior.
The returned map will be serializable if the specified map is serializable.
m - the map to be "wrapped" in a synchronized map.