C# Class LLDB.Thread

Inheritance: IDisposable
Afficher le fichier Open project: tritao/LLDBSharp

Méthodes publiques

Свойство Type Description
NativeToManagedMap Thread>.System.Collections.Concurrent.ConcurrentDictionary

Protected Properties

Свойство Type Description
__OriginalVTables void*[]
__PointerAdjustment int
__ownsNativeInstance bool

Méthodes publiques

Méthode Description
Clear ( ) : void
Dispose ( ) : void
Equals ( object obj ) : bool
EventIsThreadEvent ( LLDB @event ) : bool
GetDescription ( LLDB description ) : bool
GetExtendedBacktraceThread ( string type ) : LLDB.Thread
GetFrameAtIndex ( uint idx ) : LLDB.Frame
GetHashCode ( ) : int
GetInfoItemByPathAsString ( string path, LLDB strm ) : bool
GetProcess ( ) : LLDB.Process
GetQueue ( ) : LLDB.Queue
GetSelectedFrame ( ) : LLDB.Frame
GetStackFrameFromEvent ( LLDB @event ) : LLDB.Frame
GetStatus ( LLDB status ) : bool
GetStopDescription ( sbyte dst, uint dst_len ) : uint
GetStopReasonDataAtIndex ( uint idx ) : ulong

Get information associated with a stop reason.

Breakpoint stop reasons will have data that consists of pairs of

breakpoint IDs followed by the breakpoint location IDs (they always come

in pairs).

Stop Reason Count Data Type

======================== ===== =========================================

eStopReasonNone 0

eStopReasonTrace 0

eStopReasonBreakpoint N duple: {breakpoint id, location id}

eStopReasonWatchpoint 1 watchpoint id

eStopReasonSignal 1 unix signal number

eStopReasonException N exception data

eStopReasonExec 0

eStopReasonPlanComplete 0

GetStopReasonExtendedBacktraces ( LLDB type ) : LLDB.ThreadCollection
GetStopReasonExtendedInfoAsJSON ( LLDB stream ) : bool
GetStopReturnValue ( ) : LLDB.Value
GetThreadFromEvent ( LLDB @event ) : LLDB.Thread
IsStopped ( ) : bool
IsSuspended ( ) : bool
IsValid ( ) : bool
JumpToLine ( LLDB file_spec, uint line ) : LLDB.Error
Resume ( ) : bool
ReturnFromFrame ( LLDB frame, LLDB return_value ) : LLDB.Error
RunToAddress ( ulong addr ) : void
SafeToCallFunctions ( ) : bool
SetSelectedFrame ( uint frame_idx ) : LLDB.Frame
StepInstruction ( bool step_over ) : void
StepInto ( LLDB stop_other_threads ) : void
StepInto ( string target_name, LLDB stop_other_threads ) : void
StepInto ( string target_name, uint end_line, LLDB error, LLDB stop_other_threads ) : void
StepOut ( ) : void
StepOutOfFrame ( LLDB frame ) : void
StepOver ( LLDB stop_other_threads ) : void
StepOverUntil ( LLDB frame, LLDB file_spec, uint line ) : LLDB.Error
StepUsingScriptedThreadPlan ( string script_class_name ) : LLDB.Error
Suspend ( ) : bool

LLDB currently supports process centric debugging which means when any

thread in a process stops, all other threads are stopped. The Suspend()

call here tells our process to suspend a thread and not let it run when

the other threads in a process are allowed to run. So when

SBProcess::Continue() is called, any threads that aren't suspended will

be allowed to run. If any of the SBThread functions for stepping are

called (StepOver, StepInto, StepOut, StepInstruction, RunToAddress), the

thread will not be allowed to run and these functions will simply return.

Eventually we plan to add support for thread centric debugging where

each thread is controlled individually and each thread would broadcast

its state, but we haven't implemented this yet.

Likewise the SBThread::Resume() call will again allow the thread to run

when the process is continued.

Suspend() and Resume() functions are not currently reference counted, if

anyone has the need for them to be reference counted, please let us

know.

Thread ( ) : System
Thread ( LLDB thread ) : System
__CreateInstance ( Thread native, bool skipVTables = false ) : Thread
__CreateInstance ( global native, bool skipVTables = false ) : Thread
operator ( ) : bool

Méthodes protégées

Méthode Description
Dispose ( bool disposing ) : void
Thread ( void native, bool skipVTables = false ) : System

Private Methods

Méthode Description
Thread ( Thread native, bool skipVTables = false ) : System
__CopyValue ( Thread native ) : void*

Method Details

Clear() public méthode

public Clear ( ) : void
Résultat void

Dispose() public méthode

public Dispose ( ) : void
Résultat void

Dispose() protected méthode

protected Dispose ( bool disposing ) : void
disposing bool
Résultat void

Equals() public méthode

public Equals ( object obj ) : bool
obj object
Résultat bool

EventIsThreadEvent() public static méthode

public static EventIsThreadEvent ( LLDB @event ) : bool
@event LLDB
Résultat bool

GetDescription() public méthode

public GetDescription ( LLDB description ) : bool
description LLDB
Résultat bool

GetExtendedBacktraceThread() public méthode

public GetExtendedBacktraceThread ( string type ) : LLDB.Thread
type string
Résultat LLDB.Thread

GetFrameAtIndex() public méthode

public GetFrameAtIndex ( uint idx ) : LLDB.Frame
idx uint
Résultat LLDB.Frame

GetHashCode() public méthode

public GetHashCode ( ) : int
Résultat int

GetInfoItemByPathAsString() public méthode

public GetInfoItemByPathAsString ( string path, LLDB strm ) : bool
path string
strm LLDB
Résultat bool

GetProcess() public méthode

public GetProcess ( ) : LLDB.Process
Résultat LLDB.Process

GetQueue() public méthode

public GetQueue ( ) : LLDB.Queue
Résultat LLDB.Queue

GetSelectedFrame() public méthode

public GetSelectedFrame ( ) : LLDB.Frame
Résultat LLDB.Frame

GetStackFrameFromEvent() public static méthode

public static GetStackFrameFromEvent ( LLDB @event ) : LLDB.Frame
@event LLDB
Résultat LLDB.Frame

GetStatus() public méthode

public GetStatus ( LLDB status ) : bool
status LLDB
Résultat bool

GetStopDescription() public méthode

public GetStopDescription ( sbyte dst, uint dst_len ) : uint
dst sbyte
dst_len uint
Résultat uint

GetStopReasonDataAtIndex() public méthode

Get information associated with a stop reason.

Breakpoint stop reasons will have data that consists of pairs of

breakpoint IDs followed by the breakpoint location IDs (they always come

in pairs).

Stop Reason Count Data Type

======================== ===== =========================================

eStopReasonNone 0

eStopReasonTrace 0

eStopReasonBreakpoint N duple: {breakpoint id, location id}

eStopReasonWatchpoint 1 watchpoint id

eStopReasonSignal 1 unix signal number

eStopReasonException N exception data

eStopReasonExec 0

eStopReasonPlanComplete 0

public GetStopReasonDataAtIndex ( uint idx ) : ulong
idx uint
Résultat ulong

GetStopReasonExtendedBacktraces() public méthode

public GetStopReasonExtendedBacktraces ( LLDB type ) : LLDB.ThreadCollection
type LLDB
Résultat LLDB.ThreadCollection

GetStopReasonExtendedInfoAsJSON() public méthode

public GetStopReasonExtendedInfoAsJSON ( LLDB stream ) : bool
stream LLDB
Résultat bool

GetStopReturnValue() public méthode

public GetStopReturnValue ( ) : LLDB.Value
Résultat LLDB.Value

GetThreadFromEvent() public static méthode

public static GetThreadFromEvent ( LLDB @event ) : LLDB.Thread
@event LLDB
Résultat LLDB.Thread

IsStopped() public méthode

public IsStopped ( ) : bool
Résultat bool

IsSuspended() public méthode

public IsSuspended ( ) : bool
Résultat bool

IsValid() public méthode

public IsValid ( ) : bool
Résultat bool

JumpToLine() public méthode

public JumpToLine ( LLDB file_spec, uint line ) : LLDB.Error
file_spec LLDB
line uint
Résultat LLDB.Error

Resume() public méthode

public Resume ( ) : bool
Résultat bool

ReturnFromFrame() public méthode

public ReturnFromFrame ( LLDB frame, LLDB return_value ) : LLDB.Error
frame LLDB
return_value LLDB
Résultat LLDB.Error

RunToAddress() public méthode

public RunToAddress ( ulong addr ) : void
addr ulong
Résultat void

SafeToCallFunctions() public méthode

public SafeToCallFunctions ( ) : bool
Résultat bool

SetSelectedFrame() public méthode

public SetSelectedFrame ( uint frame_idx ) : LLDB.Frame
frame_idx uint
Résultat LLDB.Frame

StepInstruction() public méthode

public StepInstruction ( bool step_over ) : void
step_over bool
Résultat void

StepInto() public méthode

public StepInto ( LLDB stop_other_threads ) : void
stop_other_threads LLDB
Résultat void

StepInto() public méthode

public StepInto ( string target_name, LLDB stop_other_threads ) : void
target_name string
stop_other_threads LLDB
Résultat void

StepInto() public méthode

public StepInto ( string target_name, uint end_line, LLDB error, LLDB stop_other_threads ) : void
target_name string
end_line uint
error LLDB
stop_other_threads LLDB
Résultat void

StepOut() public méthode

public StepOut ( ) : void
Résultat void

StepOutOfFrame() public méthode

public StepOutOfFrame ( LLDB frame ) : void
frame LLDB
Résultat void

StepOver() public méthode

public StepOver ( LLDB stop_other_threads ) : void
stop_other_threads LLDB
Résultat void

StepOverUntil() public méthode

public StepOverUntil ( LLDB frame, LLDB file_spec, uint line ) : LLDB.Error
frame LLDB
file_spec LLDB
line uint
Résultat LLDB.Error

StepUsingScriptedThreadPlan() public méthode

public StepUsingScriptedThreadPlan ( string script_class_name ) : LLDB.Error
script_class_name string
Résultat LLDB.Error

Suspend() public méthode

LLDB currently supports process centric debugging which means when any

thread in a process stops, all other threads are stopped. The Suspend()

call here tells our process to suspend a thread and not let it run when

the other threads in a process are allowed to run. So when

SBProcess::Continue() is called, any threads that aren't suspended will

be allowed to run. If any of the SBThread functions for stepping are

called (StepOver, StepInto, StepOut, StepInstruction, RunToAddress), the

thread will not be allowed to run and these functions will simply return.

Eventually we plan to add support for thread centric debugging where

each thread is controlled individually and each thread would broadcast

its state, but we haven't implemented this yet.

Likewise the SBThread::Resume() call will again allow the thread to run

when the process is continued.

Suspend() and Resume() functions are not currently reference counted, if

anyone has the need for them to be reference counted, please let us

know.

public Suspend ( ) : bool
Résultat bool

Thread() public méthode

public Thread ( ) : System
Résultat System

Thread() public méthode

public Thread ( LLDB thread ) : System
thread LLDB
Résultat System

Thread() protected méthode

protected Thread ( void native, bool skipVTables = false ) : System
native void
skipVTables bool
Résultat System

__CreateInstance() public static méthode

public static __CreateInstance ( Thread native, bool skipVTables = false ) : Thread
native Thread
skipVTables bool
Résultat Thread

__CreateInstance() public static méthode

public static __CreateInstance ( global native, bool skipVTables = false ) : Thread
native global
skipVTables bool
Résultat Thread

operator() public static méthode

public static operator ( ) : bool
Résultat bool

Property Details

NativeToManagedMap public_oe static_oe property

public static System.Collections.Concurrent.ConcurrentDictionary NativeToManagedMap
Résultat Thread>.System.Collections.Concurrent.ConcurrentDictionary

__OriginalVTables protected_oe property

protected void*[] __OriginalVTables
Résultat void*[]

__PointerAdjustment protected_oe property

protected int __PointerAdjustment
Résultat int

__ownsNativeInstance protected_oe property

protected bool __ownsNativeInstance
Résultat bool