Поделиться через


Функция atomic_compare_exchange

Атомарным образом сравнивает значение, хранящееся в области памяти, указанной в первом аргументе, на предмет равенства со значением второго заданного аргумента и, если значения совпадают, значение в области памяти меняется на значение третьего заданного аргумента.

inline bool atomic_compare_exchange(
   _Inout_ int * _Dest,
   _Inout_ int * _Expected_value,
   int _Value
) restrict(amp);

inline bool atomic_compare_exchange(
   _Inout_ unsigned int * _Dest,
   _Inout_ unsigned int * _Expected_value,
   unsigned int _Value
) restrict(amp);

Параметры

  • _Dest
    Расположение, из которого считывается одно из сравниваемых значений, и куда, если имеется, нужно сохранить новое значение.

  • _Expected_value
    Расположение, из которого считываются второе значение, с которым выполняется сравнение.

  • _Value
    Значение, сохраняемых в указанную область памяти, указанному в _Dest, если _Dest равно _Expected_value.

Возвращаемое значение

true, если операция выполнена успешно, в противном случае — false.

Требования

Заголовок: amp.h

Пространство имен: Concurrency

См. также

Ссылки

Пространство имен Concurrency (C++ AMP)