C# Class PowerStudio.DebugEngine.DebugThread

Inheritance: IDebugThread2, IDebugThread100
Exibir arquivo Open project: IntelliTect/PowerStudio

Public Methods

Method Description
CanDoFuncEval ( ) : int
CanSetNextStatement ( IDebugStackFrame2 pStackFrame, IDebugCodeContext2 pCodeContext ) : int

Determines whether the current instruction pointer can be set to the given stack frame.

If this method returns S_OK, then call the IDebugThread2::SetNextStatement method to actually set the next statement.

EnumFrameInfo ( enum_FRAMEINFO_FLAGS dwFieldSpec, uint nRadix, IEnumDebugFrameInfo2 &ppEnum ) : int

Retrieves a list of the stack frames for this thread.

The thread's frames are enumerated in order, with the current frame enumerated first and the oldest frame enumerated last.

GetFlags ( uint &pFlags ) : int
GetLogicalThread ( IDebugStackFrame2 pStackFrame, IDebugLogicalThread2 &ppLogicalThread ) : int

Debug engines do not implement this method.

GetName ( string &pbstrName ) : int

Gets the name of a thread.

The retrieved name is always a name that can be displayed and this name describes the thread. The thread name might be derived from a run-time architecture that supports named threads, or it might be a name derived from the debug engine. Alternatively, the name of the thread can be set by a call to the IDebugThread2::SetThreadName method.

GetProgram ( IDebugProgram2 &ppProgram ) : int

Gets the program in which a thread is running.

GetThreadDisplayName ( string &bstrDisplayName ) : int
GetThreadId ( uint &pdwThreadId ) : int

Gets the system thread identifier.

A thread ID is used to identify a thread among all other threads in a process.

GetThreadProperties ( enum_THREADPROPERTY_FIELDS dwFields, THREADPROPERTIES ptp ) : int

Gets the properties that describe this thread.

The information returned from this method is typically shown in the Threads debug window.

GetThreadProperties100 ( uint dwFields, THREADPROPERTIES100 ptp ) : int
Resume ( uint &pdwSuspendCount ) : int

Resumes execution of a thread.

Each call to this method decrements the suspend count until it reaches 0 at which time, execution is actually resumed. This suspend count is displayed in the Threads debug window. For each call to this method, there must be a previous call to the IDebugThread2::Suspend method. The suspend count determines how many times the IDebugThread2::Suspend method has been called so far.

SetFlags ( uint flags ) : int
SetNextStatement ( IDebugStackFrame2 pStackFrame, IDebugCodeContext2 pCodeContext ) : int

Sets the current instruction pointer to the given code context.

The instruction pointer indicates the next instruction or statement to execute. This method is used to retry a line of source code or to force execution to continue in another function, for example.

SetThreadDisplayName ( string bstrDisplayName ) : int
SetThreadName ( string pszName ) : int

Sets the name of the thread.

To get the thread name, call the IDebugThread2::GetName method.

Suspend ( uint &pdwSuspendCount ) : int

Suspends a thread.

Each call to this method increments the suspend count above 0. This suspend count is displayed in the Threads debug window. For each call to this method, there must be a later call to the IDebugThread2::Resume method.

Method Details

CanDoFuncEval() public method

public CanDoFuncEval ( ) : int
return int

CanSetNextStatement() public method

Determines whether the current instruction pointer can be set to the given stack frame.
If this method returns S_OK, then call the IDebugThread2::SetNextStatement method to actually set the next statement.
public CanSetNextStatement ( IDebugStackFrame2 pStackFrame, IDebugCodeContext2 pCodeContext ) : int
pStackFrame IDebugStackFrame2 Reserved for future use; set to a null value. If this is a null value, use the current stack frame.
pCodeContext IDebugCodeContext2 An IDebugCodeContext2 object that describes the code location about to be executed and its context.
return int

EnumFrameInfo() public method

Retrieves a list of the stack frames for this thread.
The thread's frames are enumerated in order, with the current frame enumerated first and the oldest frame enumerated last.
public EnumFrameInfo ( enum_FRAMEINFO_FLAGS dwFieldSpec, uint nRadix, IEnumDebugFrameInfo2 &ppEnum ) : int
dwFieldSpec enum_FRAMEINFO_FLAGS A combination of flags from the FRAMEINFO_FLAGS enumeration that specifies which fields of the FRAMEINFO structures are to be filled out. Specify the FIF_FUNCNAME_FORMAT flag to format the function name into a single string.
nRadix uint Radix used in formatting numerical information in the enumerator.
ppEnum IEnumDebugFrameInfo2 Returns an IEnumDebugFrameInfo2 object that contains a list of FRAMEINFO structures describing the stack frame.
return int

GetFlags() public method

public GetFlags ( uint &pFlags ) : int
pFlags uint
return int

GetLogicalThread() public method

Debug engines do not implement this method.
public GetLogicalThread ( IDebugStackFrame2 pStackFrame, IDebugLogicalThread2 &ppLogicalThread ) : int
pStackFrame IDebugStackFrame2 An IDebugStackFrame2 object that represents the stack frame.
ppLogicalThread IDebugLogicalThread2 Returns an IDebugLogicalThread2 interface that represents the associated logical thread. A debug engine implementation should set this to a null value.
return int

GetName() public method

Gets the name of a thread.
The retrieved name is always a name that can be displayed and this name describes the thread. The thread name might be derived from a run-time architecture that supports named threads, or it might be a name derived from the debug engine. Alternatively, the name of the thread can be set by a call to the IDebugThread2::SetThreadName method.
public GetName ( string &pbstrName ) : int
pbstrName string Returns the name of the thread.
return int

GetProgram() public method

Gets the program in which a thread is running.
public GetProgram ( IDebugProgram2 &ppProgram ) : int
ppProgram IDebugProgram2 Returns an IDebugProgram2 object that represents the program this thread is running in.
return int

GetThreadDisplayName() public method

public GetThreadDisplayName ( string &bstrDisplayName ) : int
bstrDisplayName string
return int

GetThreadId() public method

Gets the system thread identifier.
A thread ID is used to identify a thread among all other threads in a process.
public GetThreadId ( uint &pdwThreadId ) : int
pdwThreadId uint Returns the system thread identifier.
return int

GetThreadProperties() public method

Gets the properties that describe this thread.
The information returned from this method is typically shown in the Threads debug window.
public GetThreadProperties ( enum_THREADPROPERTY_FIELDS dwFields, THREADPROPERTIES ptp ) : int
dwFields enum_THREADPROPERTY_FIELDS A combination of flags from the THREADPROPERTY_FIELDS enumeration that determines which fields of ptp are to be filled in.
ptp THREADPROPERTIES A THREADPROPERTIES structure that that is filled in with the properties of the thread.
return int

GetThreadProperties100() public method

public GetThreadProperties100 ( uint dwFields, THREADPROPERTIES100 ptp ) : int
dwFields uint
ptp THREADPROPERTIES100
return int

Resume() public method

Resumes execution of a thread.
Each call to this method decrements the suspend count until it reaches 0 at which time, execution is actually resumed. This suspend count is displayed in the Threads debug window. For each call to this method, there must be a previous call to the IDebugThread2::Suspend method. The suspend count determines how many times the IDebugThread2::Suspend method has been called so far.
public Resume ( uint &pdwSuspendCount ) : int
pdwSuspendCount uint Returns the suspend count after the resume operation.
return int

SetFlags() public method

public SetFlags ( uint flags ) : int
flags uint
return int

SetNextStatement() public method

Sets the current instruction pointer to the given code context.
The instruction pointer indicates the next instruction or statement to execute. This method is used to retry a line of source code or to force execution to continue in another function, for example.
public SetNextStatement ( IDebugStackFrame2 pStackFrame, IDebugCodeContext2 pCodeContext ) : int
pStackFrame IDebugStackFrame2 Reserved for future use; set to a null value.
pCodeContext IDebugCodeContext2 An IDebugCodeContext2 object that describes the code location about to be executed and its context.
return int

SetThreadDisplayName() public method

public SetThreadDisplayName ( string bstrDisplayName ) : int
bstrDisplayName string
return int

SetThreadName() public method

Sets the name of the thread.
To get the thread name, call the IDebugThread2::GetName method.
public SetThreadName ( string pszName ) : int
pszName string The name of the thread.
return int

Suspend() public method

Suspends a thread.
Each call to this method increments the suspend count above 0. This suspend count is displayed in the Threads debug window. For each call to this method, there must be a later call to the IDebugThread2::Resume method.
public Suspend ( uint &pdwSuspendCount ) : int
pdwSuspendCount uint Returns the suspend count after the suspend operation.
return int