A system and method for analyzing Java thread deadlocks. A snapshot of
threads in a Java Virtual Machine is generated, producing a thread dump
file which can be analyzed offline. The thread dump file is
optimistically parsed to identify threads which are deadlocked. A user is
provided with an interface to select filtering rules for the threads,
resulting in a set of filtered threads which are candidates for being in
infinite wait conditions.