Sdílet prostřednictvím


CryptoStream.CopyToAsync(Stream, Int32, CancellationToken) Metoda

Definice

Asynchronně přečte bajty z podkladového datového proudu, použije relevantní kryptografické transformace a zapíše výsledek do cílového datového proudu.

public:
 override System::Threading::Tasks::Task ^ CopyToAsync(System::IO::Stream ^ destination, int bufferSize, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task CopyToAsync (System.IO.Stream destination, int bufferSize, System.Threading.CancellationToken cancellationToken);
override this.CopyToAsync : System.IO.Stream * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function CopyToAsync (destination As Stream, bufferSize As Integer, cancellationToken As CancellationToken) As Task

Parametry

destination
Stream

Datový proud, do kterého se zkopíruje obsah aktuálního datového proudu.

bufferSize
Int32

Velikost vyrovnávací paměti v bajtech. Tato hodnota musí být větší než nula. Výchozí velikost je 81920.

cancellationToken
CancellationToken

Token, který se má monitorovat pro žádosti o zrušení. Výchozí hodnota je None.

Návraty

Úloha, která představuje asynchronní operaci kopírování.

Výjimky

destination je null.

buffersize je záporná nebo nulová.

Buď aktuální datový proud, nebo cílový datový proud je odstraněn.

Aktuální datový proud nepodporuje čtení nebo cílový datový proud nepodporuje zápis.

Během kryptografické operace došlo k chybě.

Token zrušení byl zrušen. Tato výjimka je uložena ve vrácené úloze.

Poznámky

Kopírování začíná na aktuální pozici v aktuálním datovém proudu a po dokončení operace kopírování neobsadí pozici cílového datového proudu.

Tato metoda ukládá do úlohy, která vrací všechny výjimky nesouvisejí s používáním, které může vyvolat synchronní protějšek metody. Pokud je ve vrácené úloze uložena výjimka, bude tato výjimka vyvolána při čekání na úkol. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem CopyTo(Stream, Int32).

Platí pro