Compartir a través de


swap (Función)

Intercambia los elementos de dos objetos concurrent_vector.

template<
   typename _Ty,
   class _Ax
>
inline void swap(
   concurrent_vector<_Ty,
   _Ax> &_A,
   concurrent_vector<_Ty,
   _Ax> &_B
);

Parámetros

  • _Ty
    El tipo de datos de los elementos almacenados en los vectores simultáneos.

  • _Ax
    El tipo de asignador de los vectores simultáneos.

  • _A
    El vector simultáneo cuyos elementos se intercambiarán con aquéllos del vector simultáneo _B.

  • _B
    El vector simultáneo que proporciona los elementos que se van a intercambiar o el vector cuyos elementos se intercambiarán con aquéllos del vector simultáneo _A.

Comentarios

La función de plantilla es un algoritmo especializado en la clase de contenedor concurrent_vector para ejecutar la función miembro _A.concurrent_vector::swap(_B). Éstas son instancias de clasificación parcial de plantillas de función por el compilador. Cuando las funciones de plantilla se sobrecargan de manera que la coincidencia de la plantilla con la llamada de función no es única, el compilador seleccionará la versión más especializada de la función de plantilla. La versión general de la función de plantilla, template <class T> void swap(T&, T&), en la clase de algoritmo funciona mediante asignación y es una operación lenta. La versión especializada en cada contenedor es mucho más rápida, de forma que puede trabajar con la representación interna de la clase de contenedor.

Este método no es seguro para la simultaneidad. Cuando llame a este método, debe asegurarse de que otros subprocesos no están realizando operaciones en cualquiera de los vectores simultáneos.

Requisitos

Encabezado: concurrent_vector.h

Espacio de nombres: simultaneidad

Vea también

Referencia

concurrency (Espacio de nombres)

Clase concurrent_vector

Conceptos

Contenedores y objetos paralelos