現在実行中のスレッド プロキシを、使用できる仮想プロセッサ ルートで再開できるようになるまでブロックします。
virtual void SwitchOut() =0;
解説
基になる仮想プロセッサ ルートの放棄後に実行中のスレッド プロキシをブロックするには、SwitchOut を使用します。 このメソッドは、リソース マネージャーから指示があった場合か、オーバーサブスクリプション状態の一時仮想プロセッサ ルートを要求した後、その処理が終了した場合に、スケジューラの仮想プロセッサ ルートの数を減らす必要があるときに便利です。 スケジューラの別の仮想プロセッサ ルートが処理を実行できるようになると、スレッド プロキシは実行を再開します。
ブロック状態のスレッド プロキシを再開するには、SwitchTo 関数を呼び出してこのスレッド プロキシの実行コンテキストに切り替えます。 関連付けられているコンテキストを使用して仮想プロセッサ ルートをアクティブ化することにより、スレッド プロキシを再開することもできます。 この方法の詳細については、IVirtualProcessorRoot::Activate のトピックを参照してください。
SwitchOut は、現在実行中のスレッドを表す IThreadProxy インターフェイスで呼び出す必要があります。それ以外の場合、結果は保証されません。
必要条件
ヘッダー: concrtrm.h
名前空間: Concurrency