You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
DRAFT, February 18, 2003, Page 101<br />
[state] - shows the current suspend state: running, waiting, waiting on monitor, sleeping, not<br />
started, zombie, or unknown.<br />
(debugger action/state) - shows what the debugger is currently doing with respect to the thread:<br />
at breakpoint, suspended, running to cursor, or stepping. If none of these are true (the thread is<br />
running normally), nothing is shown.<br />
monitors - shows the monitors owned by the thread, by id number. This is the same id number<br />
shown for objects in the variables window. If the thread is waiting on a monitor, this monitor is<br />
shown in [braces].<br />
For a simple, non-gui application, there will be your "main" thread, any threads that your code creates,<br />
and several system support threads (Signal Dispatcher, Reference Handler, Finalizer). For applets or gui<br />
applications, there will be numerous event queue, gui, and system threads.<br />
19.4 Call Stack Window<br />
Shows the current call stack for the selected thread, if the thread is suspended. When the thread is<br />
resumed, this window is disabled. Each frame of the stack shows the method, filename and line number if<br />
available, and program counter. The program counter is the current byte code index within the method.<br />
Selecting a frame will select the source line, if the corresponding file can be found, and show the<br />
associated variables in the variables window. Source files are located using the "Sources" entry of the<br />
global settings.<br />
19.5 Variables Window<br />
Shows the available variables for the current frame of the call stack. Composite objects can be expanded<br />
to see the fields or array elements. The target code must be compiled in debug mode, or not much<br />
information will be available here.<br />
this or static - shows fields for the current object if within an instance method or code block, or static<br />
fields available within the current static context.<br />
Arguments - shows arguments to the current method if within a method.<br />
Locals - shows the current local variables.<br />
Objects are shown as squares, primitive types as triangles. All non-fields are colored blue. Field icons are<br />
color coded based on the declared type of the object containing them (the actual type may be a subclass<br />
or interface implementation). The coding is:<br />
orange - field is declared in a superclass of the declared type of the containing object or an<br />
interface implemented by a superclass.<br />
green - field is declared in the declared type of the containing object.<br />
cyan - field is declared in an interface implemented by the declared type of the containing object.<br />
yellow - field is declared in a subclass of the declared type of the containing object or an<br />
interface implemented by a subclass.<br />
Static fields are shown in italic type.<br />
When a field is selected, the type in which it was declared is shown at the bottom of the variables window.<br />
For arrays, at most ten elements are shown at once. To change the elements that are shown, select the<br />
object then click on it (but don't double click). A slider bar will appear, on which you can select the first<br />
element shown.<br />
Any masked fields are shown with a grey bar over the icon.