public class SyncMap
extends java.lang.Object
implements java.util.Map
Reader operations are
SyncCollection| Modifier and Type | Field and Description |
|---|---|
protected java.util.Map |
c_ |
protected Sync |
rd_ |
protected SynchronizedLong |
syncFailures_ |
protected Sync |
wr_ |
| Constructor and Description |
|---|
SyncMap(java.util.Map map,
ReadWriteLock rwl)
Create a new SyncMap protecting the given map,
and using the given ReadWriteLock to control reader and writer methods.
|
SyncMap(java.util.Map map,
Sync sync)
Create a new SyncMap protecting the given map,
and using the given sync to control both reader and writer methods.
|
SyncMap(java.util.Map map,
Sync readLock,
Sync writeLock)
Create a new SyncMap protecting the given map,
and using the given pair of locks to control reader and writer methods.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
afterRead(boolean wasInterrupted)
Clean up after a reader operation
|
protected boolean |
beforeRead()
Try to acquire sync before a reader operation; record failure
|
void |
clear() |
boolean |
containsKey(java.lang.Object o) |
boolean |
containsValue(java.lang.Object o) |
java.util.Set |
entrySet() |
boolean |
equals(java.lang.Object o) |
java.lang.Object |
get(java.lang.Object key) |
int |
hashCode() |
boolean |
isEmpty() |
java.util.Set |
keySet() |
java.lang.Object |
put(java.lang.Object key,
java.lang.Object value) |
void |
putAll(java.util.Map coll) |
Sync |
readerSync()
Return the Sync object managing read-only operations
|
java.lang.Object |
remove(java.lang.Object key) |
int |
size() |
long |
syncFailures()
Return the number of synchronization failures for read-only operations
|
java.util.Collection |
values() |
Sync |
writerSync()
Return the Sync object managing mutative operations
|
protected final java.util.Map c_
protected final Sync rd_
protected final Sync wr_
protected final SynchronizedLong syncFailures_
public SyncMap(java.util.Map map,
Sync sync)
public SyncMap(java.util.Map map,
ReadWriteLock rwl)
public Sync readerSync()
public Sync writerSync()
public long syncFailures()
protected boolean beforeRead()
protected void afterRead(boolean wasInterrupted)
public int hashCode()
hashCode in interface java.util.MaphashCode in class java.lang.Objectpublic boolean equals(java.lang.Object o)
equals in interface java.util.Mapequals in class java.lang.Objectpublic int size()
size in interface java.util.Mappublic boolean isEmpty()
isEmpty in interface java.util.Mappublic boolean containsKey(java.lang.Object o)
containsKey in interface java.util.Mappublic boolean containsValue(java.lang.Object o)
containsValue in interface java.util.Mappublic java.lang.Object get(java.lang.Object key)
get in interface java.util.Mappublic java.lang.Object put(java.lang.Object key,
java.lang.Object value)
put in interface java.util.Mappublic java.lang.Object remove(java.lang.Object key)
remove in interface java.util.Mappublic void putAll(java.util.Map coll)
putAll in interface java.util.Mappublic void clear()
clear in interface java.util.Mappublic java.util.Set keySet()
keySet in interface java.util.Mappublic java.util.Set entrySet()
entrySet in interface java.util.Mappublic java.util.Collection values()
values in interface java.util.Map