What is JDebugTools debugging thread model?
When the target JVM is suspended (such as hitting a breakpoint, catching an exception in the debugger, hitting a watchpoint, stopping on a thread start/death, class prepare/unload or method entry/exit debugging event, or clicking on the Suspend All button), all threads in the target JVM are suspended. When the target JVM is resumed (such as single stepping, or clicking on the Resume All or Run to Cursor buttons), all threads in the target JVM are resumed. When the target JVM is suspended, you can switch the debugging context between threads, by clicking on a thread in the Threads panel.