TopBlend:
Here is the
first difference.
There are 46 differences.
is old.
is new.
java.util.concurrent
Interface ConcurrentMap<K,V>
-
-
Type Parameters:
-
K - the type of keys maintained by this map
-
V - the type of mapped values
-
All Superinterfaces:
-
Map
<K,V>
-
All Known
Subinterfaces:
Implementing Classes:
-
ConcurrentNavigableMap
ConcurrentHashMap
<K,V>
-
All Known Implementing Classes:
-
ConcurrentHashMap
,
ConcurrentSkipListMap
-
public interface ConcurrentMap<K,V>
- extends Map<K,V>
A
Map
providing additional atomic
putIfAbsent
,
remove
, and
replace
methods.
Memory consistency effects: As with other concurrent collections, actions in a thread prior to placing an object into a ConcurrentMap as a key or value
happen-before
actions subsequent to the access or removal of that object from the ConcurrentMap in another thread.
This interface is a member of the
Java Collections Framework
.
-
Since:
-
1.5
Nested classes/interfaces inherited from interface java.util.
Map
|
Map.Entry
<
K
,
V
> |
Method Summary
|
V
|
putIfAbsent
(
K
key,
V
value)
If the specified key is not already associated with a value, associate it with the given value. |
boolean |
remove
(
Object
key,
Object
Removes the
Remove
entry for
a
key only if currently mapped to
a
given value. |
V
|
replace
(
K
key,
V
Replaces the
Replace
entry for
a
key only if currently mapped to some value. |
boolean |
replace
(
K
key,
V
oldValue,
V
Replaces the
Replace
entry for
a
key only if currently mapped to
a
given value. |
Methods inherited from interface java.util.
Map
|
clear
,
containsKey
,
containsValue
,
entrySet
,
equals
,
get
,
hashCode
,
isEmpty
,
keySet
,
put
,
putAll
,
remove
,
size
,
values
|
putIfAbsent
V putIfAbsent(K key,
V value)
-
If the specified key is not already associated with a value, associate it with the given value. This is equivalent to
if (!map.containsKey(key))
return map.put(key, value);
else
return map.get(key);
except
Except
that the action is performed atomically.
-
-
-
Parameters:
-
key - key with which the specified value is to be
associated
associated.
-
value - value to be associated with the specified
key
key.
-
Returns:
-
the
previous value associated with
the
specified key, or
null
if there was no mapping for
the
key.
(A
A
null
return can also indicate that the map previously associated
null
with the
specified
key, if the implementation supports
null
values.)
values.
-
Throws:
-
UnsupportedOperationException
- if the
put
operation is not supported by this
map
map.
-
ClassCastException
- if the class of the specified key or value prevents it from being stored in this
map
map.
-
NullPointerException
IllegalArgumentException
- if the specified key or value is null, and this map does not permit null keys or values
- if some aspect of this key or value prevents it from being stored in this map.
-
IllegalArgumentException
NullPointerException
- if some property of the specified key or value prevents it from being stored in this map
- if this map does not permit
null
keys or values, and the specified key or value is
null
.
remove
boolean remove(Object key,
Object value)
-
Removes the
Remove
entry for
a
key only if currently mapped to
a
given value.
This is equivalent to
Acts as
if (map.containsKey(key) && ((map.containsKey(key) && map.get(key).equals(value)) {
map.remove(key);
return true;
} else return false;
except that the action is performed atomically.
-
-
-
Parameters:
-
key - key with which the specified value is
associated
associated.
-
value - value
expected to be
associated with the specified
key
key.
-
Returns:
-
true
if the value was
removed
removed, false otherwise
-
Throws:
-
UnsupportedOperationException
- if the
remove
operation is not supported by this
map
map.
-
ClassCastException
- if the key or value is of an inappropriate type for this map (optional)
-
NullPointerException
- if the specified key or value is null, and this map does not permit null keys or values (optional)
- if this map does not permit
null
keys or values, and the specified key or value is
null
.
replace
boolean replace(K key,
V oldValue,
V newValue)
-
Replaces the
Replace
entry for
a
key only if currently mapped to
a
given value.
This is equivalent to
Acts as
if (map.containsKey(key) && ((map.containsKey(key) && map.get(key).equals(oldValue)) {
map.put(key, newValue);
return true;
} else return false;
except that the action is performed atomically.
-
-
-
Parameters:
-
key - key with which the specified value is
associated
associated.
-
oldValue - value expected to be associated with the specified
key
key.
-
newValue - value to be associated with the specified
key
key.
-
Returns:
-
true
if the value was replaced
-
Throws:
-
UnsupportedOperationException
- if the
put
operation is not supported by this
map
map.
-
ClassCastException
- if the class of a specified key or value prevents it from being stored in this map
-
NullPointerException
- if a specified key or value is null, and this map does not permit null keys or values
-
IllegalArgumentException
- if some property of a specified key or value prevents it from being stored in this map
- if this map does not permit
null
keys or values, and the specified key or value is
null
.
replace
V replace(K key,
V value)
-
Replaces the
Replace
entry for
a
key only if currently mapped to some value.
This is equivalent to
Acts as
if (map.containsKey(key)) ((map.containsKey(key)) {
return map.put(key, value);
} else return null;
except that the action is performed atomically.
-
-
-
Parameters:
-
key - key with which the specified value is
associated
associated.
-
value - value to be associated with the specified
key
key.
-
Returns:
-
the
previous value associated with
the
specified key, or
null
if there was no mapping for
the
key.
(A
A
null
return can also indicate that the map previously associated
null
with the
specified
key, if the implementation supports
null
values.)
values.
-
Throws:
-
UnsupportedOperationException
- if the
put
operation is not supported by this
map
map.
-
ClassCastException
- if the class of the specified key or value prevents it from being stored in this map
-
NullPointerException
- if the specified key or value is null, and this map does not permit null keys or values
-
IllegalArgumentException
- if some property of the specified key or value prevents it from being stored in this map
- if this map does not permit
null
keys or values, and the specified key or value is
null
.