InterlockedCompareStore 函式 (HLSL 參考)

以不可部分完成的方式比較目的地與比較值。 如果兩者相同,則會以輸入值覆寫目的地。

語法

void InterlockedCompareStore(
  in R dest,
  in T compare_value,
  in T value
);

參數

dest [in]

類型: R

目的地位址。

compare_value [in]

類型: T

比較值。

value [in]

類型: T

輸入值。

傳回值

此函式不會傳回值。

備註

以不可部分完成的方式比較 dest 所參考的值與 compare_value ,並在值相符時將 儲存在 dest 所參考的位置。 此作業只能在 intuint 型別資源和共用記憶體變數上執行。 此函式有兩個可能的用法。 第一個是當 R 是共用記憶體變數類型時。 在此情況下,函式會在 dest所參考的共用記憶體暫存器上執行作業。 第二個案例是當 R 是資源變數類型時。 在此案例中,函式會在 dest所參考的資源位置上執行作業。

內嵌作業不表示任何記憶體柵欄/屏障。

最小著色器模型

下列著色器模型中支援此函式。

著色器模型 支援
著色器模型 5 和更高的著色器模型

 

下列著色器類型支援此函式:

頂點 船體 網域 幾何形狀 像素 計算
x x x x x x

 

另請參閱

內建函式

著色器模型 5