次の方法で共有


CorDebugUserState 列挙型

スレッドのユーザーの状態を示します。

構文

typedef enum CorDebugUserState {  
    USER_STOP_REQUESTED     =  0x01,  
    USER_SUSPEND_REQUESTED  =  0x02,  
    USER_BACKGROUND         =  0x04,  
    USER_UNSTARTED          =  0x08,  
    USER_STOPPED            =  0x10,  
    USER_WAIT_SLEEP_JOIN    =  0x20,  
    USER_SUSPENDED          =  0x40,  
    USER_UNSAFE_POINT       =  0x80,  
    USER_THREADPOOL         = 0x100  
} CorDebugUserState;  

メンバー

[値] 説明
USER_STOP_REQUESTED スレッドの終了が要求されました。
USER_SUSPEND_REQUESTED スレッドの中断が要求されました。
USER_BACKGROUND スレッドがバックグラウンドで実行されています。
USER_UNSTARTED スレッドは実行し始めていません。
USER_STOPPED スレッドは終了しました。
USER_WAIT_SLEEP_JOIN スレッドは、別のスレッドがタスクを完了するまで待機しています。
USER_SUSPENDED スレッドは中断しています。
USER_UNSAFE_POINT スレッドは安全でないポイントにあります。 つまり、スレッドは、ガベージ コレクションがブロックされる可能性がある実行中のポイントにあります。

デバッグ イベントは安全でないポイントからディスパッチできますが、安全でないポイントでスレッドを中断すると、スレッドが再開されるまでデッドロックが発生する可能性が非常に高くなります。 安全なポイントと安全でないポイントは、Just-In-Time (JIT) とガベージ コレクションの実装によって決まります。
USER_THREADPOOL スレッドはスレッド プールからのものです。

解説

スレッドのユーザー状態とは、デバッガーで調べられたときのスレッドの状態です。 スレッドには、ユーザー状態の組み合わせが存在する場合もあります。

スレッドのユーザー状態を取得するには、ICorDebugThread::GetUserState メソッドを使用します。

必要条件

:システム要件」を参照してください。

ヘッダー: CorDebug.idl、CorDebug.h

ライブラリ: CorGuids.lib

.NET Framework のバージョン: 1.0 以降で使用可能

関連項目