swap 함수
두 concurrent_vector 개체의 요소를 교환합니다.
template<
typename _Ty,
class _Ax
>
inline void swap(
concurrent_vector<_Ty,
_Ax> &_A,
concurrent_vector<_Ty,
_Ax> &_B
);
매개 변수
_Ty
동시 벡터에 저장된 요소의 데이터 형식입니다._Ax
동시 벡터의 할당자 형식입니다._A
동시 벡터가 동시 벡터 _B와 교환할 요소입니다._B
전환할 요소를 제공하는 동시 벡터 또는 요소를 동시 벡터 _A의 요소와 교환할 벡터입니다
설명
템플릿 함수는 멤버 함수 _A.concurrent_vector::swap(_B)을 실행하기 위해 컨테이너 클래스 concurrent_vector에 특수화된 알고리즘입니다.이는 컴파일러에서 함수 템플릿의 부분 정렬 인스턴스입니다.템플릿 함수가 함수 호출이 있는 템플릿 일치가 고유하지 않게 초과 로드되면 컴파일러는 템플릿 함수의 가장 특수화된 버전을 선택합니다.알고리즘 클래스에서 템플릿 함수**template <class T> void swap(T&, T&)**의 일반 버전은 할당으로 작동하며 작업이 느립니다.각 컨테이너에 있는 특수화된 버전은 컨테이너 클래스의 내부 표현을 사용하여 작업할 수 있는 것만큼 훨씬 빠릅니다.
이 메서드는 동시성이 보장되지 않습니다.이 메서드를 호출할 때 동시 벡터 중 하나에서 다른 스레드가 작업을 수행하고 있지 않도록 해야 합니다.
요구 사항
헤더: concurrent_vector.h
네임 스페이스: 동시성