Namespaces
Variants

std::experimental::atomic_weak_ptr<T>:: exchange

From cppreference.net
weak_ptr < T > exchange ( weak_ptr < T > desired, std:: memory_order order = std:: memory_order_seq_cst ) noexcept ;

기본 weak_ptr 을 원자적으로 desired 로 교체합니다. 이 연산은 읽기-수정-쓰기 연산입니다. 메모리는 order 값에 따라 영향을 받습니다.

목차

매개변수

desired - 할당할 값
order - 적용할 메모리 순서 제약 조건

반환값

호출 전 원자 변수의 값.

비고

atomic_weak_ptr 객체 자체에 대한 모든 변경사항과 관련된 모든 use_count 증가는 원자적으로 수행됨이 보장됩니다. 관련된 use_count 감소는 원자적 연산 이후에 발생하지만, 그 연산의 일부일 필요는 없습니다. 관련된 모든 소멸 또는 할당 해제 연산은 원자적 연산 이후에 발생하며 그 연산의 일부가 아닙니다.

참고 항목

std::shared_ptr 에 대한 원자적 연산을 특수화합니다
(함수 템플릿)