Guarding against re-entrancy with additional synchronization.  Updated javadoc to warn about it.