Sherman, IMHO, synchronizing multiple call site does NOT look good to me.
On next chance, someone other calls lookup() without knowing, that it has to be 
synchronized.
Please simply synchronize lookup() itself, maybe in sophisticated way (only the necessary part of the code).
The same seems to count for init().
(don't know if synchronised would apply on abstract methods, but in any way on 
it's implementation):
    protected synchronized void init() {}

-Ulf


Am 01.09.2011 20:42, schrieb Xueming Shen:
Hi,

This is a forward porting. Same fix has been in jdk5/6, and will be in jdk 7u2 
later.

http://cr.openjdk.java.net/~sherman/6898310/webrev

The change itself is relative simple. And given its race-condition nature, no 
reliable
regression test case is provided.

Thanks!

-Sherman

Reply via email to