次の方法で共有


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;

Members

価値 Description
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 メソッドを使用します。

Requirements

プラットフォーム:サポートされている .NET オペレーティング システムを参照してください。

ヘッダ: CorDebug.idl、CorDebug.h

図書館: CorGuids.lib

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