atomic_compare_exchange_strong_explicit 함수
수행 된 원자 비교 및 교환 작업.
template <class _Ty>
inline bool atomic_compare_exchange_strong_explicit(
volatile atomic<Ty> *Atom,
Ty *Exp,
Ty Value,
memory_order Order1,
memory_order Order2
) _NOEXCEPT;
template <class Ty>
inline bool atomic_compare_exchange_strong_explicit(
atomic<Ty> *Atom,
Ty *Exp,
Ty Value,
memory_order Order1,
memory_order Order2
) _NOEXCEPT;
매개 변수
Atom
에 대 한 포인터는 atomic 형식의 값을 저장 하는 개체가 Ty.Exp
포인터 형식의 값에 Ty.Value
Ty 형식의 값입니다.Order1
첫 번째 memory_order 인수.Order2
두 번째 memory_order 인수.값은 Order2 수 없습니다 memory_order_release 또는 memory_order_acq_rel, 값 보다 더 강한 수 없습니다 Order1.
반환 값
A bool 값 비교 결과를 나타냅니다.
설명
원자 비교 및 교환 작업 에 의해 가리키는 개체에 저장 된 값과 비교 Atom 에 의해 가리키는 값에 대해 Exp.값이 같으면는에 의해 가리키는 개체에 저장 된 값 atom 대체 됩니다 Val 를 사용 하 여는 read-modify-write 작업 및 메모리 적용 순서에 지정 된 제약 조건 Order1.값이 동일 하지 않은 경우, 작업에 의해 가리키는 값 대체 Exp 가 가리키는 것을 개체에 저장 된 값을 갖는 Atom 에서 지정 된 메모리 순서 제약 조건을 적용 하 고 Order2.
요구 사항
헤더: 원자
네임 스페이스: std