Threads, Call Stack

The debuggee threads are displayed in the "Threads" panel. The threads command will also display the threads of the debuggee.

Current Thread

JSwat has a notion of a "current" thread. That is, the thread upon which various operations are performed. The current thread is set automatically when the debuggee hits a breakpoint of any kind. Otherwise, the current thread can be set manually using the thread command. It can also be set by clicking on the thread in the "Threads" panel.

The current thread is indicated in the "Threads" panel by drawing it with an italic font. The threads command uses the asterisk (*) character to indicate the current thread.

Any operations which require the current thread to be set will report an error message if the current thread has not been set.

The "Threads" panel has a popup menu which provides access to related functions and options. These menu items should be self-explanatory.

Call Stack

When the debuggee is suspended and the current thread is set, the call stack is displayed in the "Stack" panel. The stack can also be displayed using the where command.

Whenever a breakpoint is hit, the current stack frame is set to zero. The current frame is indicated by drawing it with an italic font, and the frame can be changed by double-clicking on the corresponding entry in the "Stack" panel. This has the side-effect of opening the source file for the location given by that frame. The current stack frame can also be changed using the up, down, or frame commands.