PipeStream.WriteAsync Methode

Definitie

Overloads

Name Description
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

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

WriteAsync(Byte[], Int32, Int32, CancellationToken)

Asynchroon schrijft een opgegeven aantal bytes van een bytematrix vanaf een opgegeven positie, wordt de huidige positie binnen deze stroom vooruitgegaan door het aantal geschreven bytes en worden annuleringsaanvragen gecontroleerd.

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Bron:
PipeStream.Unix.cs
Bron:
PipeStream.Unix.cs
Bron:
PipeStream.Unix.cs
Bron:
PipeStream.Unix.cs
Bron:
PipeStream.Unix.cs

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.ValueTask WriteAsync(ReadOnlyMemory<byte> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.WriteAsync : ReadOnlyMemory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Overrides Function WriteAsync (buffer As ReadOnlyMemory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask

Parameters

buffer
ReadOnlyMemory<Byte>

Het geheugengebied waaruit gegevens moeten worden geschreven.

cancellationToken
CancellationToken

Het token dat moet worden gecontroleerd op annuleringsaanvragen. De standaardwaarde is None.

Retouren

Een taak die de asynchrone schrijfbewerking vertegenwoordigt.

Uitzonderingen

Stream biedt geen ondersteuning voor schrijven.

Geen toegang tot een gesloten pijp.

De pijp is kapot.

De pijp is nog niet aangesloten.

– of –

De pijp heeft een niet-verbonden status.

– of –

De pijpgreep is niet ingesteld. (Heeft uw PipeStream implementatie aangeroepen InitializeHandle(SafePipeHandle, Boolean, Boolean)?

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

Opmerkingen

Met de WriteAsync methode kunt u resource-intensieve I/O-bewerkingen uitvoeren zonder de hoofdthread te blokkeren. Deze prestatieoverweging is met name belangrijk in toepassingen waarbij een tijdrovende stroombewerking de UI-thread kan blokkeren en ervoor kan zorgen dat uw app wordt weergegeven alsof deze niet werkt. De asynchrone methoden worden gebruikt in combinatie met de trefwoorden async en await in Visual Basic en C#.

Gebruik de CanWrite eigenschap om te bepalen of het huidige exemplaar ondersteuning biedt voor schrijven.

Als de bewerking wordt geannuleerd voordat deze is voltooid, bevat de geretourneerde taak de Canceled waarde voor de Status eigenschap.

Van toepassing op

WriteAsync(Byte[], Int32, Int32, CancellationToken)

Bron:
PipeStream.Unix.cs
Bron:
PipeStream.Unix.cs
Bron:
PipeStream.Unix.cs
Bron:
PipeStream.Unix.cs
Bron:
PipeStream.Unix.cs

Asynchroon schrijft een opgegeven aantal bytes van een bytematrix vanaf een opgegeven positie, wordt de huidige positie binnen deze stroom vooruitgegaan door het aantal geschreven bytes en worden annuleringsaanvragen gecontroleerd.

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. De standaardwaarde is None.

Retouren

Een taak die de asynchrone schrijfbewerking vertegenwoordigt.

Uitzonderingen

buffer is null.

Het offset is negatief.

– of –

Het count is negatief.

buffer. Lengte - offset is kleiner dan count.

Stream biedt geen ondersteuning voor schrijven.

Geen toegang tot een gesloten pijp.

De pijp is kapot.

De pijp is nog niet aangesloten.

– of –

De pijp heeft een niet-verbonden status.

– of –

De pijpgreep is niet ingesteld. (Heeft uw PipeStream implementatie aangeroepen InitializeHandle(SafePipeHandle, Boolean, Boolean)?

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

Opmerkingen

Met de WriteAsync methode kunt u resource-intensieve I/O-bewerkingen uitvoeren zonder de hoofdthread te blokkeren. Deze prestatieoverweging is met name belangrijk in toepassingen waarbij een tijdrovende stroombewerking de UI-thread kan blokkeren en ervoor kan zorgen dat uw app wordt weergegeven alsof deze niet werkt. De asynchrone methoden worden gebruikt in combinatie met de trefwoorden async en await in Visual Basic en C#.

Gebruik de CanWrite eigenschap om te bepalen of het huidige exemplaar ondersteuning biedt voor schrijven.

Als de bewerking wordt geannuleerd voordat deze is voltooid, bevat de geretourneerde taak de TaskStatus.Canceled waarde voor de Status eigenschap.

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