Hashmap pegado en get

Tengo un problema extraño con HashMap.
Hay varios subprocesos que acceden al mismo hashmap (no a threadsafe).

En algún momento, el proceso se atasca.

cuando inspecciono la pila de hilos, veo muchos hilos en estado:

java.lang.Thread.State: RUNNABLE
    at java.util.HashMap.get(HashMap.java:303) 

Tenga en cuenta que esto sucede muy raro. Y no se puede reproducir bajo demanda.

¿Por qué se atasca?

No hay sincronización en el hashmap.

las llaves son cadenas