IUMSThreadProxy 構造体
実行スレッドの抽象化です。 ユーザー モード スケジュール可能 (UMS) スレッドをスケジューラに付与するには、スケジューラ ポリシー要素 SchedulerKind の値を UmsThreadDefault に設定し、さらに IUMSScheduler インターフェイスを実装する必要があります。 UMS スレッドは、Windows 7 以上のバージョンの 64 ビット オペレーティング システムでのみサポートされます。
struct IUMSThreadProxy : public IThreadProxy;
メンバー
パブリック メソッド
名前 |
説明 |
---|---|
クリティカル領域に入るときに呼び出します。 クリティカル領域内のコードが実行されている間に生じた非同期のブロック操作をスケジューラは一切監視しません。 つまり、UMS スレッドでは、ページ フォールト、スレッドの中断、カーネルの非同期プロシージャ呼び出し (APC: Asynchronous Procedure Call) などが発生しても、スケジューラが再度呼び出されることはありません。 |
|
ハイパー クリティカル領域に入るときに呼び出します。 ハイパー クリティカル領域内のコードが実行されている間に生じたブロック操作をスケジューラは一切監視しません。 つまり、UMS スレッドでは、ブロックを伴う関数呼び出し、ブロックの原因となるロック取得、ページ フォールト、スレッドの中断、カーネルの非同期プロシージャ呼び出し (APC) などが発生しても、スケジューラが再度呼び出されることはありません。 |
|
クリティカル領域から抜けるときに呼び出します。 |
|
ハイパー クリティカル領域から抜けるときに呼び出します。 |
|
スレッド プロキシが存在するクリティカル領域の種類を返します。 ハイパー クリティカル領域はクリティカル領域のスーパーセットであるため、コードがクリティカル領域に入った後、さらにハイパー クリティカル領域に入った場合、InsideHyperCriticalRegion が返されます。 |
継承階層
必要条件
ヘッダー: concrtrm.h
名前空間: Concurrency