Функция InterlockedCompareStore
Сравнивает входные данные со значением сравнения атомарным образом.
Синтаксис
void InterlockedCompareStore(
in UINT dest,
in UINT compare_value,
in UINT value
);
Параметры
-
dest [in]
-
Тип: UINT
Адрес назначения.
-
compare_value [in]
-
Тип: UINT
Значение сравнения.
-
value [in]
-
Тип: UINT
Входное значение.
Возвращаемое значение
Эта функция не возвращает значение.
Комментарии
Эта операция может выполняться только с типизированными ресурсами int или uint и переменными общей памяти. Существует три возможных варианта использования этой функции. Во-первых, R является типом переменной общей памяти. В этом случае функция выполняет операцию с регистром общей памяти, на который ссылается dest. Второй сценарий — это ситуация, когда R является типом переменной ресурса. В этом сценарии функция выполняет операцию с расположением ресурса, на который ссылается dest. Наконец, третий сценарий — это ситуация, когда R является локальным типом переменной. В этом сценарии функция уменьшается до операции, выполняемой с использованием локальных операций.
Эта функция поддерживается в следующих типах шейдеров:
VS | HS | DS | GS | PS | CS |
---|---|---|---|---|---|
x | x | x | x | x | x |
См. также раздел