Patent ID: 7502968

Claim:
A method of analyzing thread deadlocks in a Java virtual machine (JVM), comprising the steps of: obtaining a thread dump file; identifying a locked object in the thread dump file, wherein the locked object is indicated as being in use by an active thread; identifying any waiting threads that are associated with the locked object, wherein the waiting threads are threads that are waiting on the locked object; identifying any locking threads that are associated with the locked object, wherein the locking threads are threads that own a resource and are currently attempting to lock the locked object; and comparing the waiting threads and the locking threads to identify any self threads in a self wait condition, wherein a self thread in a self wait condition is the active thread that currently owns the locked object and is also one of the waiting threads that is waiting on the locked object and matches one of the locking threads, wherein a user interface allows a user to choose rules, and wherein the rules are used to exclude threads that are identified as being in a self wait condition from being identified as in a deadlock condition.