KsGateGetStateUnsafe 関数 (ks.h)
KsGateGetStateUnsafe 関数は、指定されたゲートの状態 (開いているか閉じているか) を安全でない方法で返します。これは、同期 に関係なくされます。
構文
BOOLEAN KsGateGetStateUnsafe(
[in] PKSGATE Gate
);
パラメーター
[in] Gate
状態を返すゲートを表す KSGATE 構造体へのポインター。
戻り値
この呼び出しは、ゲート 開いている場合は TRUE を返し、ゲートが閉じている場合は FALSE を します。
備考
KsGateGetStateUnsafe は同期を処理しないため、ゲートが呼び出し時に状態の途中から別の状態に遷移している場合、ゲートの状態と一致しない結果を取得できます。
ゲートAの出力がゲートBへの入力として接続されている状況を考えてみましょう。A がクローズ状態に遷移し、B がオープンからクローズに遷移します。 同時に、A が閉じられ、B が閉じるまでの間に KsGateGetStateUnsafe 別のスレッドが呼び出された場合でも、ルーチンは B が開いていたことを返します。
KsGateGetStateUnsafe は、Gate->Count が 0 より大きいかどうかを返します。 この関数では、これを行うためにインターロックされた関数は使用されません。 したがって、呼び出しは同期に関係なく実行されます。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Microsoft Windows XP 以降のオペレーティング システムと DirectX 8.0 以降の DirectX バージョンで使用できます。 |
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | ks.h (Ks.h を含む) |
IRQL | 任意のレベル |