4. Februar 2008

Thread Dumps erzeugen unter Java

Vor JDK 1.5

Windows:


"Ctrl" + "Break" erzeugt einen Thread Dump in Standard-Out

Linux/Unix:

kill -3 <pid> erzeugt einen Thread Dump in Standard-Out


Ab JDK 1.5


Über das Tool jstack aus dem Java SDK:

jstack <pid> >stack.txt


Analyse-Tools:
  • TDA (OpenSource-Tool) Thread Dump Analyzer zur Analyse von Textfiles-Dumps:
    • Threads waiting for a monitor:
      • Ein Thread wartet vor einem synchronized-Block, der gerade von einem anderen Thread durchlaufen wird
    • Threads sleeping on a monitor:
      • Ein Thread ist innerhalb eines sychronized-Blocks und ruft dort wait() auf

Keine Kommentare: