DXGKDDI_SETCONTEXTSCHEDULINGPROPERTIES コールバック関数 (d3dkmddi.h)
デバイス コンテキストのスケジュール プロパティを設定または変更します。
構文
DXGKDDI_SETCONTEXTSCHEDULINGPROPERTIES DxgkddiSetcontextschedulingproperties;
NTSTATUS DxgkddiSetcontextschedulingproperties(
IN_CONST_HANDLE hAdapter,
IN_CONST_PDXGKARG_SETCONTEXTSCHEDULINGPROPERTIES pSetContextSchedulingProperties
)
{...}
パラメーター
hAdapter
デバイス コンテキストへのハンドル。
pSetContextSchedulingProperties
スケジュール プロパティを含む DXGKARG_SETCONTEXTSCHEDULINGPROPERTIES 構造体へのポインター。
戻り値
操作が成功した場合は、STATUS_SUCCESSを返します。 それ以外の場合は、適切な NTSTATUS 値エラー コードを返します。
注釈
このコールバック関数の実装を登録するには、DXGKARG_SETCONTEXTSCHEDULINGPROPERTIESの適切なメンバーを設定し、DxgkDdiSetContextSchedulingProperties を呼び出します。
特定のプロセスに対してアダプターを初めて開くと、OS は DxgkDdiCreateProcess を 呼び出して、カーネル モード ドライバー (KMD) がアダプター追跡データ構造ごとにプロセスごとに適切なを作成できるようにします。 コンテキストが作成されると、KMD は、作成対象のデバイスとアダプターを認識し、このプロセスのアダプター追跡データ構造から KMD プロセス ハンドルを検索できる必要があります。 KMD プロセス内では、スケジューラには、4 つの潜在的な優先度バンド コンテキストすべてに対する追跡データ構造が割り当てられている必要があります。
コンテキストが作成された場合、または Direct3D デバイスの優先度が変更された場合、またはアプリケーションがフォーカスを取得または失うと、OS は GPU スケジューラを呼び出してスケジュール プロパティを設定または変更します。 新しく作成されたコンテキストの場合、OS では、このコンテキストへの最初の送信が許可される前に、コンテキスト スケジューリング プロパティが設定されることを保証します。 この呼び出しは、コンテキスト実行の途中で行うことができます。 GPU スケジューラは、現在のスケジュール期間にどのように影響するかという点で余裕があり、OS の要件は、優先度バンドの次のスケジュールイテレーションで変更を有効にする必要があるということです。
要件
要件 | 値 |
---|---|
Header | d3dkmddi.h |