次の方法で共有


スレッドと同期レベル 1

レベル 1 のスレッド処理と同期では、WDDM は特定の関数クラス内での再入を許可しません。 つまり、特定のクラス内のドライバーに入ることができるスレッドは 1 つだけです。 ただし、複数のレベル 1 クラスからの呼び出しと レベル 0 の呼び出しを同時に入力できます。 異なる第 1 レベルのクラスの 2 つ以上のスレッドと レベル 0 の呼び出しのスレッドを同時にドライバーで実行できますが、2 つのスレッドが 1 つのプロセスに属することはできません。

WDDM は、スレッドと同期のレベル 1 で実行されるディスプレイ ミニポート ドライバーへの呼び出しを非再入クラス (次のクラスなど) に分類します。 その他のクラスには、VidMm、仮想マシン、vGPU が含まれます。

ポインター クラス

WDDM では、再入可能な方法でポインター クラス関数の 1 つを呼び出すことはできません。 つまり、最大で 1 つのスレッドは、特定の時点で次のいずれかの関数内で実行できます。

GPU スケジューラ クラス

WDDM では、再入可能な方法で GPU スケジューラ ローダー クラス関数の 1 つへの呼び出しは許可されません。 つまり、最大で 1 つのスレッドは、特定の時点で次のいずれかの関数内で実行できます。

スウィズリング範囲クラス

WDDM では、再入可能な方法で Swizzling 範囲クラス関数の 1 つを呼び出すことはできません。 つまり、最大で 1 つのスレッドは、特定の時点で次のいずれかの関数内で実行できます。

オーバーレイ クラス

WDDM では、再入可能な方法でオーハーレイ クラス関数の 1 つを呼び出すことはできません。 つまり、最大で 1 つのスレッドは、特定の時点で次のいずれかの関数内で実行できます。

子 I/O クラス

WDDM では、再入可能な方法で子 I/O クラス関数の 1 つを呼び出すことはできません。 つまり、ほとんどの場合、特定の時点で子デバイスごとに次のいずれかの関数内で 1 つのスレッドを実行できます。

子 I/O クラス関数は、子デバイスごとに同期されます (つまり、複数の子デバイスへの同時呼び出しが許可されます)。 ただし、子デバイス間に内部依存関係が存在する場合、ディスプレイ ミニポート ドライバーは必要に応じて呼び出しをブロックする必要があります。

ディスプレイ クラス

WDDM では、再入可能な方法でディスプレイ クラス関数の 1 つを呼び出すことはできません。 つまり、最大で 1 つのスレッドは、特定の時点で次のいずれかの関数内で実行できます。