Stream.ReadAtLeastAsync Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Asynchroon leest ten minste een minimum aantal bytes uit de huidige stroom, verplaatst de positie binnen de stream door het aantal gelezen bytes en bewaakt annuleringsaanvragen.
public System.Threading.Tasks.ValueTask<int> ReadAtLeastAsync(Memory<byte> buffer, int minimumBytes, bool throwOnEndOfStream = true, System.Threading.CancellationToken cancellationToken = default);
member this.ReadAtLeastAsync : Memory<byte> * int * bool * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Function ReadAtLeastAsync (buffer As Memory(Of Byte), minimumBytes As Integer, Optional throwOnEndOfStream As Boolean = true, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)
Parameters
- minimumBytes
- Int32
Het minimum aantal bytes dat in de buffer moet worden gelezen.
- throwOnEndOfStream
- Boolean
true om een uitzondering te genereren als het einde van de stream wordt bereikt voordat het bytes wordt gelezen minimumBytes . false Als u minder wilt retourneren dan minimumBytes wanneer het einde van de stream is bereikt.
De standaardwaarde is true.
- cancellationToken
- CancellationToken
Het token dat moet worden gecontroleerd op annuleringsaanvragen.
Retouren
Een taak die de asynchrone leesbewerking vertegenwoordigt. De waarde van Result de eigenschap bevat het totale aantal bytes dat in de buffer is gelezen. Dit is gegarandeerd groter dan of gelijk aan minimumBytes wanneer throwOnEndOfStream .true Dit is minder dan minimumBytes wanneer het einde van de stream is bereikt en throwOnEndOfStream is false. Dit kan kleiner zijn dan het aantal bytes dat in de buffer is toegewezen als er momenteel niet veel bytes beschikbaar zijn.
Uitzonderingen
minimumBytes is negatief of is groter dan de lengte van buffer.
throwOnEndOfStream is true en het einde van de stream wordt bereikt voordat u bytes aan gegevens leest minimumBytes .
Het annuleringstoken is geannuleerd. Deze uitzondering wordt opgeslagen in de geretourneerde taak.
Opmerkingen
Wanneer minimumBytes is 0 (nul), wordt deze leesbewerking voltooid zonder te wachten op beschikbare gegevens in de stream.