BufferedStream.WriteAsync(Byte[], Int32, Int32, CancellationToken) Methode

Definitie

Asynchroon schrijft een reeks bytes naar de huidige stroom, verplaatst de huidige positie binnen deze stream door het aantal geschreven bytes en bewaakt annuleringsaanvragen.

public:
 override System::Threading::Tasks::Task ^ WriteAsync(cli::array <System::Byte> ^ buffer, int offset, int count, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task WriteAsync(byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
override this.WriteAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function WriteAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task

Parameters

buffer
Byte[]

De buffer waaruit gegevens moeten worden geschreven.

offset
Int32

De byte-offset buffer op basis van nul waaruit bytes naar de stream moeten worden gekopieerd.

count
Int32

Het maximum aantal bytes dat moet worden geschreven.

cancellationToken
CancellationToken

Het token dat moet worden gecontroleerd op annuleringsaanvragen.

Retouren

Een taak die de asynchrone schrijfbewerking vertegenwoordigt.

Uitzonderingen

buffer is null.

offset of count is negatief.

De som van offset en count is groter dan de bufferlengte.

De stream biedt geen ondersteuning voor schrijven.

De stroom is verwijderd.

De stream wordt momenteel gebruikt door een eerdere schrijfbewerking.

Het annuleringstoken is geannuleerd. Deze uitzondering wordt opgeslagen in de geretourneerde taak.

Opmerkingen

U kunt een annuleringstoken maken door een exemplaar van de CancellationTokenSource klasse te maken en de Token eigenschap door te geven als de cancellationToken parameter.

Deze methode slaat op in de taak die alle uitzonderingen voor niet-gebruik retourneert die de synchrone tegenhanger van de methode kan genereren. Als er een uitzondering wordt opgeslagen in de geretourneerde taak, wordt deze uitzondering gegenereerd wanneer de taak wordt gewacht. Gebruiksonderzondering, zoals ArgumentException, worden nog steeds synchroon gegenereerd. Zie de uitzonderingen die zijn gegenereerd door Write(Byte[], Int32, Int32)de opgeslagen uitzonderingen voor de opgeslagen uitzonderingen.

Van toepassing op