Interface IDebuggerThread

All Known Implementing Classes:
AbstractDebuggerThread

public interface IDebuggerThread
Standard interface for a thread object managed by a debugger.
  • 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

      Get this thread status.
      Returns:
      the status, never null
    • resume

      boolean resume()
      Resume this thread.
      Returns:
    • suspend

      boolean suspend()
      Suspend this thread.
      Returns:
    • stepInto

      boolean stepInto()
      Step one instruction, stepping inside sub-routine branching instructions.

      IMPLEMENTATION NOTE: currently, for native debuggers, step() is an asynchronous operation. A success return value means that the operation partially succeeded. A client should wait for a breakpoint-hit event to make sure that the step() instruction was fully successful.

      Returns:
      true if the operation succeeded
    • stepOver

      boolean stepOver()
      Step one instruction, stepping over sub-routine branching instructions.

      IMPLEMENTATION NOTE: currently, for native debuggers, step() is an asynchronous operation. A success return value means that the operation partially succeeded. A client should wait for a breakpoint-hit event to make sure that the step() instruction was fully successful.

      Returns:
      true if the operation succeeded
    • stepOut

      boolean stepOut()
      Step until the currently executed sub-routine returns.

      IMPLEMENTATION NOTE: currently, for native debuggers, step() is an asynchronous operation. A success return value means that the operation partially succeeded. A client should wait for a breakpoint-hit event to make sure that the step() instruction was fully successful.

      Returns:
      true if the operation succeeded
    • getFrameCount

      int getFrameCount()
      Get the number of frames in this thread.
      Returns:
    • getFrame

      IDebuggerThreadStackFrame getFrame(int index)
      Get a stack frame by 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:
    • getLocation

      String getLocation()
      Returns:
    • 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

      boolean setRegisters(IRegisterData registers)
      Parameters:
      registers -
      Returns: