次の方法で共有


InterlockedCompareStore 関数

入力と比較値をアトミックに比較します。

構文

void InterlockedCompareStore(
  in UINT dest,
  in UINT compare_value,
  in UINT value
);

パラメーター

dest [in]

型: UINT

宛先アドレス。

compare_value [入力]

型: UINT

比較値。

value [in]

型: UINT

入力値。

戻り値

この関数は値を返しません。

注釈

この操作は、int 型または uint 型のリソースと共有メモリ変数でのみ実行できます。 この関数には 3 つの用途があります。 1 つ目は、R が共有メモリ変数型の場合です。 この場合、関数は dest によって参照される共有メモリ レジスタに対して操作を実行します。 2 つ目のシナリオは、R がリソース変数の種類である場合です。 このシナリオでは、関数は dest によって参照されるリソースの場所に対して操作を実行します。 最後に、3 番目のシナリオは、R がローカル変数型である場合です。 このシナリオでは、関数はローカル操作を使用して実行される操作に減らします。

この関数は、次の種類のシェーダーでサポートされています。

VS HS DS GS PS CS
x x x x x x

 

関連項目

RWByteAddressBuffer

シェーダー モデル 5