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 及更高着色器模型

 

以下类型的着色器支持此函数:

顶点 外壳 Geometry 像素 计算
x x x x x x

 

另请参阅

内部函数

着色器模型 5