Interface IDebuggerThread
-
Method Summary
Modifier and TypeMethodDescriptionbooleanbooleanbooleanbooleanbooleanRetrieve the address of the top frame of this thread.getFrame(int index) Get a stack frame by index.getFrameAddresses(AddressForm form) Get the addresses for all frames of this suspended thread.intGet the number of frames in this thread.List<? extends IDebuggerThreadStackFrame> Get the list of stack frames in the current thread.longgetId()Get this thread id.getName()Get this thread name.Get the registers of a native unit (x86, arm...) or null when it is a VM thread (JVM).Get this thread status.default IDebuggerThreadStackFramebooleanresume()Resume this thread.booleansetRegisters(IRegisterData registers) Set native register data.booleanstepInto()Step one instruction, stepping inside sub-routine branching instructions.booleanstepOut()Step until the currently executed sub-routine returns.booleanstepOver()Step one instruction, stepping over sub-routine branching instructions.booleansuspend()Suspend this thread.
-
Method Details
-
getId
long getId()Get this thread id.- Returns:
- the thread id
-
getName
String getName()Get this thread name.- Returns:
- the name, null if none
-
getStatus
DebuggerThreadStatus getStatus()Get this thread status.- Returns:
- the status, never null
-
canResume
boolean canResume() -
resume
boolean resume()Resume this thread.- Returns:
- true if the thread was resumed
-
canSuspend
boolean canSuspend() -
suspend
boolean suspend()Suspend this thread.- Returns:
- true if the thread was suspended
-
canStepInto
boolean canStepInto() -
stepInto
boolean stepInto()Step one instruction, stepping inside sub-routine branching instructions.Implementation note: currently, debuggers implement
step()as asynchronous operations. A success return value means that the operation partially succeeded. A client should wait for a breakpoint-hit event to make sure that the operation was successful.- Returns:
- true if the operation succeeded
-
canStepOver
boolean canStepOver() -
stepOver
boolean stepOver()Step one instruction, stepping over sub-routine branching instructions.Implementation note: currently, debuggers implement
step()as asynchronous operations. A success return value means that the operation partially succeeded. A client should wait for a breakpoint-hit event to make sure that the operation was successful.- Returns:
- true if the operation succeeded
-
canStepOut
boolean canStepOut() -
stepOut
boolean stepOut()Step until the currently executed sub-routine returns.Implementation note: currently, debuggers implement
step()as asynchronous operations. A success return value means that the operation partially succeeded. A client should wait for a breakpoint-hit event to make sure that the operation was successful.- Returns:
- true if the operation succeeded
-
getFrameCount
int getFrameCount()Get the number of frames in this thread.- Returns:
- frame count, -1 on error
-
getTopFrame
- Returns:
-
getFrame
Get a stack frame by index.- Parameters:
index- 0-based frame index- Returns:
- the requested stack frame, null if invalid or on error
-
getFrames
List<? extends IDebuggerThreadStackFrame> getFrames()Get the list of stack frames in the current thread. Most debuggers would require the thread be suspended for this operation to succeed. The first item in the list is the top-level stack-frame.- Returns:
- stack frames, or null on error
-
getAddress
String getAddress()Retrieve the address of the top frame of this thread.- Returns:
- thread location, or null
-
getFrameAddresses
Get the addresses for all frames of this suspended thread.- Parameters:
form-- Returns:
- list of addresses, the first one being the top frame's
-
getRegisters
IRegisterData getRegisters()Get the registers of a native unit (x86, arm...) or null when it is a VM thread (JVM).- Returns:
- the list of registers
-
setRegisters
Set native register data.- Parameters:
registers- register data- Returns:
- true if the registers were set
-