atomic_fetch_add_explicit 함수
값을 atomic 개체에 저장된 기존 값에 추가합니다.
template <class T> T* atomic_fetch_add_explicit(
volatile atomic<T*> *Atom,
ptrdiff_t Value,
memory_order Order
) noexcept;
template <class T> T* atomic_fetch_add_explicit(
atomic<T*> *Atom,
ptrdiff_t Value,
memory_order Order
) noexcept;
매개 변수
Atom
포인터를 T 형식에 저장하는 atomic 개체에 대한 포인터입니다.Value
ptrdiff_t 형식의 값입니다.
반환 값
작업이 수행되기 바로 전에 원자 개체에 포함된 포인터의 값입니다.
설명
atomic_fetch_add_explicit 함수는 read-modify-write 작업을 원자적으로 수행하여 Order에서 지정한 memory_order 제약 조건 내에서 Value를 Atom에 저장된 값에 추가합니다.
원자 형식이 atomic_address이면 Value에 ptrdiff_t 형식이 포함되고 작업이 저장된 포인터를 char *로 취급합니다.
이 작업은 정수 형식에 대해서도 오버로드됩니다.
integral atomic_fetch_add_explicit(
volatile atomic-integral * Atom, integral Value, memory_order Order
) noexcept;
integral atomic_fetch_add_explicit(
atomic-integral * Atom, integral Value, memory_order Order
) noexcept;
요구 사항
헤더: atomic
네임스페이스: std