----- Original Message -----
Sent: Saturday, July 01, 2000 5:47
AM
Subject: Fast Hashmap doubt .
I was going through put ( ) and putAll ( )
methods in Fast HashMap code in the struts . But did not get why we need to
clone the HashMap and add a entry to that cloned map then move that cloned map
to original HashMap . In multi- threaded enviornment anyway we synchronized
the code that accesses the HashMap in the put method .. ?
public Object put(Object key,
Object value) {
if
(fast) {
synchronized (this) {
//
IF U synchronize the code like this then easily only one thread can
manipulate the HashMap
HashMap temp = (HashMap) map.clone(); //
What this do then
?
Object result = temp.put(key, value);
//
map =
temp; //
return
(result);
}
} else
{
synchronized (map)
{
return (map.put(key,
value));
}
}
}