When JVM heap exhausts, application goes into hang - it stopped reporting any GC activity. The process stopped processing anything and a GC thread is spinning at 100% of a CPU.