Funzione copy_async
Copia un oggetto C++ AMP e restituisce un oggetto completion_future su cui può esserci attesa. Non è possibile copiare dati quando si sta eseguendo codice su un acceleratore. Il formato generico di questa funzione è 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
);
Parametri
_Dest
Oggetto da copiare._DestIter
Un iteratore di output nella posizione iniziale alla destinazione.InputIterator
Tipo di iteratore di input.OutputIterator
Tipo di iteratore di output._Rank
Numero di dimensioni dell'oggetto da cui copiare o oggetto in cui copiare._Src
Oggetto da copiare._SrcFirst
Un iteratore iniziale nel contenitore sorgente._SrcLast
Un iteratore finale del contenitore sorgente._Value_type
Il tipo di dati degli elementi che vengono copiati.
Valore restituito
Un future<void> su cui può esserci attesa.
Note
L'operazione di copia effettua sempre una copia completa.
Se gli extents dell'oggetto sorgente e dell'oggetto destinazione non corrispondono, una runtime_exception viene lanciata.
È possibile copiare in oggetti array and array_view dalle seguenti origini:
Un array o array_view con lo stesso numero di dimensioni e tipo di elementi dell' array o dell' array_view di destinazione.
Un contenitore standard il cui tipo di elemento è lo stesso dell' array o array_view di destinazione. I contenitori che espongono i membri size() e data() hanno prestazioni più efficienti.
Requisiti
Intestazione: amp.h
Spazio dei nomi: Concurrency