Compartilhar via


Função de copy_async

Copia um objeto C++ AMP e retorna future<void> que pode ser atendido.Você não pode copiar dados durante a execução do código em um acelerador.A forma geral dessa função é copy(src, dest).

template <
   typename _Value_type,
   int _Rank                     
>
std::shared_future<void> copy_async(
   const array<_Value_type,
   _Rank>& _Src,
   array<_Value_type,
   _Rank>& _Dest                     
);
                     
template <
   typename InputIterator,
   typename _Value_type,
   int _Rank                     
>
std::shared_future<void> copy_async(
   InputIterator _SrcFirst,
   InputIterator _SrcLast,
   array<_Value_type,
   _Rank> &_Dest                     
);
                     
template <
   typename InputIterator,
   typename _Value_type,
   int _Rank                     
>
std::shared_future<void> copy_async(
   InputIterator _SrcFirst,
   array<_Value_type,
   _Rank> &_Dest                     
);
                     
template <
   typename OutputIterator,
   typename _Value_type,
   int _Rank                     
>
std::shared_future<void> copy_async(
   const array<_Value_type,
   _Rank> &_Src,
   OutputIterator _DestIter                     
);
                     
template <
   typename _Value_type,
   int _Rank                     
>
std::shared_future<void> copy_async(
   const array<_Value_type,
   _Rank>& _Src,
   array_view<_Value_type,
   _Rank>& _Dest                     
);
                     
template <
   typename _Value_type,
   int _Rank                     
>
std::shared_future<void> copy_async(
   const array_view<const _Value_type,
   _Rank>& _Src,
   array<_Value_type,
   _Rank>& _Dest                     
);
                     
template <
   typename _Value_type,
   int _Rank                     
>
std::shared_future<void> copy_async(
   const array_view<_Value_type,
   _Rank>& _Src,
   array<_Value_type,
   _Rank>& _Dest                     
);
                     
template <
   typename _Value_type,
   int _Rank                     
>
std::shared_future<void> copy_async(
   const array_view<const _Value_type,
   _Rank>& _Src,
   array_view<_Value_type,
   _Rank>& _Dest                     
);
                     
template <
   typename _Value_type,
   int _Rank                     
>
std::shared_future<void> copy_async(
   const array_view<_Value_type,
   _Rank>& _Src,
   array_view<_Value_type,
   _Rank>& _Dest                     
);
                     
template <
   typename InputIterator,
   typename _Value_type,
   int _Rank                     
>
std::shared_future<void> copy_async(
   InputIterator _SrcFirst,
   InputIterator _SrcLast,
   array_view<_Value_type,
   _Rank> &_Dest                     
);
                     
template <
   typename InputIterator,
   typename _Value_type,
   int _Rank                     
>
std::shared_future<void> copy_async(
   InputIterator_SrcFirst,
   array_view<_Value_type,
   _Rank> &_Dest                     
);
                     
template <
   typename OutputIterator,
   typename _Value_type,
   int _Rank                     
>
std::shared_future<void> copy_async(
   const array_view<_Value_type,
   _Rank> &_Src,
   OutputIterator _DestIter                     
);

Parâmetros

  • _Dest
    O objeto ao qual será copiado.

  • _DestIter
    Um iterador de saída para a posição inicial no destino.

  • InputIterator
    O tipo do iterador de entrada.

  • OutputIterator
    O tipo do iterador de saída.

  • _Rank
    A classificação do objeto de onde copiar ou o objeto para o qual será copiado.

  • _Src
    Objeto a ser copiado.

  • _SrcFirst
    Um iterador inicial no contêiner de origem.

  • _SrcLast
    Um iterador final no contêiner de origem.

  • _Value_type
    O tipo de dado dos elementos que são copiados.

Valor de retorno

Um future<void> que pode ser esperado.

Comentários

A operação de cópia sempre executa uma cópia profunda.

Se as extensões dos objetos de origem e de destino não correspondem, é lançado um runtime_exception.

Você pode copiar para objetos array e array_view das seguintes fontes:

  • Um array ou array_view que tem a mesma classificação e tipo de elemento que o destino array ou array_view.

  • Um contêiner padrão cujo tipo de elemento é o mesmo que o de destino array ou array_view.Contêiners que expõe membros size() e data() executam de modo mais eficiente.

Requisitos

Cabeçalho: amp.h

Namespace: Concurrency

Consulte também

Referência

Namespace de simultaneidade (AMP C++)