ID3D11Multithread インターフェイス (d3d11_4.h)
マルチスレッド アプリケーションの重要なセクションのスレッド保護を提供します。
継承
ID3D11Multithread インターフェイスは、IUnknown インターフェイスから継承されます。 ID3D11Multithread には、次の種類のメンバーもあります。
メソッド
ID3D11Multithread インターフェイスには、これらのメソッドがあります。
ID3D11Multithread::Enter デバイスのクリティカル セクションを入力します。 (ID3D11Multithread.Enter) |
ID3D11Multithread::GetMultithreadProtected マルチスレッド保護が有効になっているかどうかを確認します。 |
ID3D11Multithread::Leave デバイスの重要なセクションのままにします。 (ID3D11Multithread.Leave) |
ID3D11Multithread::SetMultithreadProtected マルチスレッド保護のオンとオフを切り替えます。 |
解説
このインターフェイスは、IUnknown::QueryInterface を使用して ID3D11DeviceContext (またはそれ以降のバージョン) インターフェイスで作成された即時デバイス コンテキストからクエリを実行することによって取得されます。
D3D10 とは異なり、D3D11 にはマルチスレッド レイヤーはありません。 既定では、マルチスレッド保護はオフになっています。 SetMultithreadProtected を使用して有効にし、Enter キーと Leave キーを押して、特定の順序で実行する必要があるグラフィックス コマンドをカプセル化します。
D3D11 では、既定では、アプリケーションは一度に 1 つのスレッドのみをイミディエイト コンテキストで使用できます。 ただし、アプリケーションはこのインターフェイスを使用してその制限を変更できます。 インターフェイスは、イミディエイト コンテキストのスレッド保護を有効にすることができます。これにより、1 つのコンテキストを複数のスレッドと共有するために、各即時コンテキスト呼び出しのオーバーヘッドが増加します。
要件
対象プラットフォーム | Windows |
ヘッダー | d3d11_4.h |