Context クラス
実行コンテキストの抽象化を表します。
class Context;
メンバー
パブリック メソッド
名前 |
Description |
---|---|
現在のコンテキストをブロックします。 |
|
現在のコンテキストへのポインターを返します。 |
|
コンテキストが属するスケジューラ内で一意のコンテキストの識別子を返します。 |
|
コンテキストが現在実行されているスケジュール グループの識別子を返します。 |
|
コンテキストが現在実行されている仮想プロセッサの識別子を返します。 |
|
現在のコンテキストが属するスケジューラ内で一意の現在のコンテキストの識別子を返します。 |
|
現在のコンテキストで現在インラインで実行されているタスク コレクションがアクティブなキャンセル処理中である (または間もなくキャンセル処理が開始される) かどうかを示す値を返します。 |
|
コンテキストが同期的にブロックされているかどうかを判断します。コンテキストがブロックを引き起こしたアクションを明示的に実行した場合、そのコンテキストは同期的にブロックされていると見なされます。 |
|
スケジューラの仮想プロセッサのいずれかで実行されるコンテキストで呼び出された場合に、コード ブロックの期間中、追加の仮想プロセッサをそのスケジューラに挿入します。 |
|
現在のコンテキストが実行されているスケジュール グループの識別子を返します。 |
|
コンテキストのブロックを解除し、実行できるようにします。 |
|
現在のコンテキストが実行されている仮想プロセッサの識別子を返します。 |
|
別のコンテキストが実行できるように、が発生します。他のコンテキストがスケジューラに譲渡使用できない場合は、別のオペレーティング システム スレッドに発生することがあります。 |
プロテクト演算子
名前 |
Description |
---|---|
Context オブジェクトはランタイムによって内部的に破棄されます。これは、明示的に削除することはできません。 |
解説
同時実行ランタイム スケジューラ (「Scheduler」を参照してください) は、実行コンテキストを使用して、アプリケーションによってキューに入れられた作業を実行します。Win32 スレッドは、 Windows オペレーティング システムの実行コンテキストの例です。
スケジューラの同時実行レベルは、リソース マネージャーによって許可された仮想プロセッサの数と常に等しくなります。仮想プロセッサとは、処理リソースを抽象化したものであり、基になるシステムのハードウェア スレッドに対応しています。単一のスケジューラ コンテキストのみ仮想プロセッサである時点で実行できます。
スケジューラは本質的に協調的であるため、待機状態になると、常実行コンテキストが異なるコンテキストに仮想プロセッサをいつでも発生することがあります。待機状態が終了すると、スケジューラの使用可能な仮想プロセッサが実行を開始するまで再開できません。
継承階層
Context
必要条件
ヘッダー: concrt.h
名前空間: の同時実行