atomic_compare_exchange 関数
1 番目の引数で指定されたメモリ位置に格納されている値を 2 番目に指定された引数の値と等しいかどうかアトミックに比較し、値が同じ場合、メモリ位置の値は 3 番目に指定された引数の値に変更されます。
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
比較される値の 1 つが読み取られ、新しい値 (ある場合) が格納される位置。_Expected_value
比較される 2 番目の値が読み取られる位置。_Value
_Dest が _Expected_value と等しい場合、_Dest によって指定したメモリ位置に格納される値。
戻り値
操作が正常に終了した場合は true。それ以外の場合は false。
必要条件
ヘッダー: amp.h
名前空間: Concurrency