copy_async — Funkcja
Kopiuje obiekt C++ AMP i zwraca obiekt completion_future, który może być oczekiwany.Nie można skopiować danych, podczas uruchamiania kodu na akceleratorze. Ogólna postać tej funkcji to copy(src, dest).
template <
typename _Value_type,
int _Rank
>
concurrency::completion_future copy_async(
const array<_Value_type, _Rank>& _Src,
array<_Value_type, _Rank>& _Dest
);
template <
typename InputIterator,
typename _Value_type,
int _Rank
>
concurrency::completion_future copy_async(
InputIterator _SrcFirst,
InputIterator _SrcLast,
array<_Value_type, _Rank> &_Dest
);
template <
typename InputIterator,
typename _Value_type,
int _Rank
>
concurrency::completion_future copy_async(
InputIterator _SrcFirst,
array<_Value_type, _Rank> &_Dest
);
template <
typename OutputIterator,
typename _Value_type,
int _Rank
>
concurrency::completion_future copy_async(
const array<_Value_type, _Rank> &_Src,
OutputIterator _DestIter
);
template <
typename _Value_type,
int _Rank
>
concurrency::completion_future copy_async(
const array<_Value_type, _Rank>& _Src,
array_view<_Value_type, _Rank>& _Dest
);
template <
typename _Value_type,
int _Rank
>
concurrency::completion_future copy_async(
const array_view<const _Value_type, _Rank>& _Src,
array<_Value_type, _Rank>& _Dest
);
template <
typename _Value_type,
int _Rank
>
concurrency::completion_future copy_async(
const array_view<_Value_type, _Rank>& _Src,
array<_Value_type, _Rank>& _Dest
);
template <
typename _Value_type,
int _Rank
>
concurrency::completion_future copy_async(
const array_view<const _Value_type, _Rank>& _Src,
array_view<_Value_type, _Rank>& _Dest
);
template <
typename _Value_type,
int _Rank
>
concurrency::completion_future copy_async(
const array_view<_Value_type, _Rank>& _Src,
array_view<_Value_type, _Rank>& _Dest
);
template <
typename InputIterator,
typename _Value_type,
int _Rank
>
concurrency::completion_future copy_async(
InputIterator _SrcFirst,
InputIterator _SrcLast,
array_view<_Value_type, _Rank> &_Dest
);
template <
typename InputIterator,
typename _Value_type,
int _Rank
>
concurrency::completion_future copy_async(
InputIterator_SrcFirst,
array_view<_Value_type, _Rank> &_Dest
);
template <
typename OutputIterator,
typename _Value_type,
int _Rank
>
concurrency::completion_future copy_async(
const array_view<_Value_type, _Rank> &_Src,
OutputIterator _DestIter
);
Parametry
_Dest
Obiekt, do którego należy kopiować._DestIter
Iterator wyjściowy określający pozycję początkową w miejscu docelowym.InputIterator
Typ iteratora wejściowego.OutputIterator
Typ iteratora wyjściowego._Rank
Ranga kopiowanego obiektu źródłowego lub docelowego._Src
Obiekt do skopiowania._SrcFirst
Początkowy iterator do kontenera źródłowego._SrcLast
Końcowy iterator do kontenera źródłowego._Value_type
Typ danych elementów, które są kopiowane.
Wartość zwracana
future<void>, który może być oczekiwany.
Uwagi
Operacja kopiowania zawsze wykonuje kopię głęboką.
Jeżeli zakresy obiektów źródłowych i docelowych nie pasują do siebie, zgłaszany jest wyjątek runtime_exception.
Kopiowanie do obiektów array i array_view można wykonywać z następujących źródeł:
Obiekt array lub array_view, który ma tę samą rangę oraz typ elementu co obiekt docelowy array lub array_view.
Standardowy kontener, którego typ elementu jest taki sam jak obiektu docelowego array lub array_view.Kontenery, które udostępniają elementy członkowskie size() i data(), są wykonywane efektywniej.
Wymagania
Nagłówek: amp.h
Przestrzeń nazw: Concurrency