Compartilhar via


Função swap

Troca os elementos de dois objetos de concurrent_vector .

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

Parâmetros

  • _Ty
    O tipo de dados dos elementos armazenados em vetores simultâneas.

  • _Ax
    O tipo do alocador dos vetores simultâneas.

  • _A
    O vetor simultânea cujos elementos devem ser trocadas com aqueles de vetor simultâneo _B.

  • _B
    O vetor simultânea que fornecem os elementos a ser alternados, ou o vetor cujos elementos devem ser trocadas com aqueles de vetor simultâneo _A.

Comentários

A função do modelo é um algoritmo especializado na classe concurrent_vector do contêiner para executar a função de membro _A.concurrent_vector::swap(_B). Essas são instâncias de ordenação parcial de modelos de função pelo compilador. Quando as funções de modelo são sobrecarregadas de tal modo que a correspondência do modelo com a chamada de função não for exclusivo, o compilador selecionará a versão mais especializada da função do modelo. A versão geral da função do modelo, template <class T> void swap(T&, T&), na classe do algoritmo e pela atribuição é uma operação lenta. A versão especializada em cada contêiner é muito mais rápida porque pode trabalhar com a representação interna da classe do contêiner.

Este método não é seguro em simultaneidade. Certifique-se de que nenhum outro thread está executando operações em qualquer um dos vetores simultâneas quando você chama esse método.

Requisitos

Cabeçalho: concurrent_vector.h

Namespace: simultaneidade

Consulte também

Referência

Namespace Concurrency

Classe concurrent_vector

Conceitos

Contêineres e objetos em paralelo