Class implementing a debug thread.
It represents a thread in the python interpreter that we are tracing.
Provides simple wrapper methods around bdb for the owning client to
call to step etc.
Methods
|
|
__init__
bootstrap
get_ident
set_ident
traceThread
trace_dispatch
|
|
__init__
|
__init__ (
self,
dbgClient,
targ=None,
args=None,
kwargs=None,
mainThread=0,
)
Constructor
Arguments
- dbgClient
- the owning client
- targ
- the target method in the run thread
- args
- arguments to be passed to the thread
- kwargs
- arguments to be passed to the thread
- mainThread
- 0 if this thread is not the mainscripts thread
|
|
bootstrap
|
bootstrap ( self )
Private method to bootstrap the thread.
It wraps the call to the user function to enable tracing
before hand.
|
|
get_ident
|
get_ident ( self )
Public method to return the id for this thread.
Returns
the id of this thread (int)
|
|
set_ident
|
set_ident ( self, id )
Public method to set the id for this thread.
Arguments
- id
- id for this thread (int)
|
|
traceThread
|
traceThread ( self )
Private method to setup tracing for this thread.
|
|
trace_dispatch
|
trace_dispatch (
self,
frame,
event,
arg,
)
Private method wraping the trace_dispatch of bdb.py.
It wraps the call to dispatch tracing into
bdb to make sure we have locked the client to prevent multiple
threads from entering the client event loop.
|
|