InterlockedOr 関数
値に対してアトミック OR を実行します。
構文
void InterlockedOr(
in UINT dest,
in UINT value,
out UINT original_value
);
パラメーター
戻り値
なし
解説
この操作は、 INT または UINT 型のリソースと共有メモリ変数でのみ実行できます。 この関数には 3 つの用途があります。 1 つ目は、R が共有メモリ変数型の場合です。 この場合、関数は dest によって参照される共有メモリ レジスタの値を使用してアトミック OR を実行します。 2 つ目のシナリオは、R がリソース変数の種類である場合です。 このシナリオでは、関数は dest によって参照されるリソースの場所の値を使用してアトミック OR を実行します。 最後に、3 番目のシナリオは、R がローカル変数型である場合です。 このシナリオでは、関数は dest と value の値を持つ OR に減らします。 操作の結果は 、dest の値を置き換えます。 オーバーロードされた関数には、 dest の元の値に設定される追加の出力変数があります。 このオーバーロードされた操作は、R が読み取り可能で書き込み可能な場合にのみ使用できます。
この関数は、次の種類のシェーダーでサポートされています。
VS | HS | DS | GS | PS | CS |
---|---|---|---|---|---|
x | x | x | x | x | x |
関連項目