C# 클래스 LLDB.Thread

상속: IDisposable
파일 보기 프로젝트 열기: tritao/LLDBSharp

공개 프로퍼티들

프로퍼티 타입 설명
NativeToManagedMap Thread>.System.Collections.Concurrent.ConcurrentDictionary

보호된 프로퍼티들

프로퍼티 타입 설명
__OriginalVTables void*[]
__PointerAdjustment int
__ownsNativeInstance bool

공개 메소드들

메소드 설명
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

보호된 메소드들

메소드 설명
Dispose ( bool disposing ) : void
Thread ( void native, bool skipVTables = false ) : System

비공개 메소드들

메소드 설명
Thread ( Thread native, bool skipVTables = false ) : System
__CopyValue ( Thread native ) : void*

메소드 상세

Clear() 공개 메소드

public Clear ( ) : void
리턴 void

Dispose() 공개 메소드

public Dispose ( ) : void
리턴 void

Dispose() 보호된 메소드

protected Dispose ( bool disposing ) : void
disposing bool
리턴 void

Equals() 공개 메소드

public Equals ( object obj ) : bool
obj object
리턴 bool

EventIsThreadEvent() 공개 정적인 메소드

public static EventIsThreadEvent ( LLDB @event ) : bool
@event LLDB
리턴 bool

GetDescription() 공개 메소드

public GetDescription ( LLDB description ) : bool
description LLDB
리턴 bool

GetExtendedBacktraceThread() 공개 메소드

public GetExtendedBacktraceThread ( string type ) : LLDB.Thread
type string
리턴 LLDB.Thread

GetFrameAtIndex() 공개 메소드

public GetFrameAtIndex ( uint idx ) : LLDB.Frame
idx uint
리턴 LLDB.Frame

GetHashCode() 공개 메소드

public GetHashCode ( ) : int
리턴 int

GetInfoItemByPathAsString() 공개 메소드

public GetInfoItemByPathAsString ( string path, LLDB strm ) : bool
path string
strm LLDB
리턴 bool

GetProcess() 공개 메소드

public GetProcess ( ) : LLDB.Process
리턴 LLDB.Process

GetQueue() 공개 메소드

public GetQueue ( ) : LLDB.Queue
리턴 LLDB.Queue

GetSelectedFrame() 공개 메소드

public GetSelectedFrame ( ) : LLDB.Frame
리턴 LLDB.Frame

GetStackFrameFromEvent() 공개 정적인 메소드

public static GetStackFrameFromEvent ( LLDB @event ) : LLDB.Frame
@event LLDB
리턴 LLDB.Frame

GetStatus() 공개 메소드

public GetStatus ( LLDB status ) : bool
status LLDB
리턴 bool

GetStopDescription() 공개 메소드

public GetStopDescription ( sbyte dst, uint dst_len ) : uint
dst sbyte
dst_len uint
리턴 uint

GetStopReasonDataAtIndex() 공개 메소드

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
리턴 ulong

GetStopReasonExtendedBacktraces() 공개 메소드

public GetStopReasonExtendedBacktraces ( LLDB type ) : LLDB.ThreadCollection
type LLDB
리턴 LLDB.ThreadCollection

GetStopReasonExtendedInfoAsJSON() 공개 메소드

public GetStopReasonExtendedInfoAsJSON ( LLDB stream ) : bool
stream LLDB
리턴 bool

GetStopReturnValue() 공개 메소드

public GetStopReturnValue ( ) : LLDB.Value
리턴 LLDB.Value

GetThreadFromEvent() 공개 정적인 메소드

public static GetThreadFromEvent ( LLDB @event ) : LLDB.Thread
@event LLDB
리턴 LLDB.Thread

IsStopped() 공개 메소드

public IsStopped ( ) : bool
리턴 bool

IsSuspended() 공개 메소드

public IsSuspended ( ) : bool
리턴 bool

IsValid() 공개 메소드

public IsValid ( ) : bool
리턴 bool

JumpToLine() 공개 메소드

public JumpToLine ( LLDB file_spec, uint line ) : LLDB.Error
file_spec LLDB
line uint
리턴 LLDB.Error

Resume() 공개 메소드

public Resume ( ) : bool
리턴 bool

ReturnFromFrame() 공개 메소드

public ReturnFromFrame ( LLDB frame, LLDB return_value ) : LLDB.Error
frame LLDB
return_value LLDB
리턴 LLDB.Error

RunToAddress() 공개 메소드

public RunToAddress ( ulong addr ) : void
addr ulong
리턴 void

SafeToCallFunctions() 공개 메소드

public SafeToCallFunctions ( ) : bool
리턴 bool

SetSelectedFrame() 공개 메소드

public SetSelectedFrame ( uint frame_idx ) : LLDB.Frame
frame_idx uint
리턴 LLDB.Frame

StepInstruction() 공개 메소드

public StepInstruction ( bool step_over ) : void
step_over bool
리턴 void

StepInto() 공개 메소드

public StepInto ( LLDB stop_other_threads ) : void
stop_other_threads LLDB
리턴 void

StepInto() 공개 메소드

public StepInto ( string target_name, LLDB stop_other_threads ) : void
target_name string
stop_other_threads LLDB
리턴 void

StepInto() 공개 메소드

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
리턴 void

StepOut() 공개 메소드

public StepOut ( ) : void
리턴 void

StepOutOfFrame() 공개 메소드

public StepOutOfFrame ( LLDB frame ) : void
frame LLDB
리턴 void

StepOver() 공개 메소드

public StepOver ( LLDB stop_other_threads ) : void
stop_other_threads LLDB
리턴 void

StepOverUntil() 공개 메소드

public StepOverUntil ( LLDB frame, LLDB file_spec, uint line ) : LLDB.Error
frame LLDB
file_spec LLDB
line uint
리턴 LLDB.Error

StepUsingScriptedThreadPlan() 공개 메소드

public StepUsingScriptedThreadPlan ( string script_class_name ) : LLDB.Error
script_class_name string
리턴 LLDB.Error

Suspend() 공개 메소드

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
리턴 bool

Thread() 공개 메소드

public Thread ( ) : System
리턴 System

Thread() 공개 메소드

public Thread ( LLDB thread ) : System
thread LLDB
리턴 System

Thread() 보호된 메소드

protected Thread ( void native, bool skipVTables = false ) : System
native void
skipVTables bool
리턴 System

__CreateInstance() 공개 정적인 메소드

public static __CreateInstance ( Thread native, bool skipVTables = false ) : Thread
native Thread
skipVTables bool
리턴 Thread

__CreateInstance() 공개 정적인 메소드

public static __CreateInstance ( global native, bool skipVTables = false ) : Thread
native global
skipVTables bool
리턴 Thread

operator() 공개 정적인 메소드

public static operator ( ) : bool
리턴 bool

프로퍼티 상세

NativeToManagedMap 공개적으로 정적으로 프로퍼티

public static System.Collections.Concurrent.ConcurrentDictionary NativeToManagedMap
리턴 Thread>.System.Collections.Concurrent.ConcurrentDictionary

__OriginalVTables 보호되어 있는 프로퍼티

protected void*[] __OriginalVTables
리턴 void*[]

__PointerAdjustment 보호되어 있는 프로퍼티

protected int __PointerAdjustment
리턴 int

__ownsNativeInstance 보호되어 있는 프로퍼티

protected bool __ownsNativeInstance
리턴 bool