Unsynchronized access to a WeakHashMap causes endless loop and deadlock-like behavior. A synchronization of the map, or use a combination of ConcurrentHashMap and WeakHashMap should solve the problem.
A colleague of mine recently ran into an issue that I have not run into myself, but found to be interesting and, in my opinion, worth blogging about here. During some distributed Java development, my ...