Deadlock Detector

The deadlock detector finds cycles of threads that are in a deadlock and waiting to acquire locks. That is, it finds threads that are blocked waiting to enter or re-enter a synchronization block after a wait call, where each thread owns one lock while trying to obtain another lock already held by another thread.

Usually, a thread is deadlocked if it is part of a cycle in the relation is waiting for lock owned by. In the simplest case, thread A is blocked waiting for a lock owned by thread B, and thread B is blocked waiting for a lock owned by thread A.

This is an intrusive operation, and should be used only in cases in which it is suspected that messages are locked up in the system.

To enable the monitoring, use the following command:

THREAD MONITOR ON

To disable the monitoring, use the following command:

THREAD MONITOR OFF

While the monitor is enabled, entering the threads command will display information regarding any detected deadlocks, showing the thread name(s) and the lock name(s). The thread names will indicate the components that are deadlocked. Deadlocks on external components, such as a locked data base, are not available.


iWay Software