std::experimental::atomic_shared_ptr<T>:: exchange
From cppreference.net
<
cpp
|
experimental
|
atomic shared ptr
|
shared_ptr
<
T
>
exchange
(
shared_ptr
<
T
>
desired,
std::
memory_order
order
=
std::
memory_order_seq_cst
)
noexcept
;
|
||
기본
shared_ptr
을 원자적으로
desired
로 교체합니다. 이 연산은 읽기-수정-쓰기 연산입니다. 메모리는
order
값에 따라 영향을 받습니다.
목차 |
매개변수
| desired | - | 할당할 값 |
| order | - | 적용할 메모리 순서 제약 조건 |
반환값
호출 전 원자 변수의 값.
비고
atomic_shared_ptr
객체 자체에 대한 모든 변경사항과 관련된 모든
use_count
증가는 원자적으로 수행됨이 보장됩니다. 관련된
use_count
감소는 원자적 연산 이후에 발생하지만, 그 연산의 일부일 필요는 없습니다. 관련된 모든 소멸 또는 할당 해제 연산은 원자적 연산 이후에 발생하며 그 연산의 일부가 아닙니다.
참고 항목
std::shared_ptr
에 대한 원자적 연산을 특수화합니다
(함수 템플릿) |