Stream.ReadAtLeastAsync Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Asynchronně přečte alespoň minimální počet bajtů z aktuálního datového proudu, posune pozici v rámci streamu o počet přečtených bajtů a monitoruje žádosti o zrušení.
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)
Parametry
- minimumBytes
- Int32
Minimální počet bajtů, které se mají načíst do vyrovnávací paměti.
- throwOnEndOfStream
- Boolean
true
vyvolá výjimku, pokud se před čtením minimumBytes
bajtů dosáhne konce datového proudu; false
vrátí se méně, než minimumBytes
když je dosaženo konce datového proudu.
Výchozí formát je true
.
- cancellationToken
- CancellationToken
Token, který se má monitorovat pro žádosti o zrušení.
Návraty
Úloha, která představuje asynchronní operaci čtení. Hodnota jeho Result vlastnosti obsahuje celkový počet bajtů načtených do vyrovnávací paměti. Je zaručeno, že bude větší nebo roven minimumBytes
, pokud throwOnEndOfStream
je true
hodnota . To bude menší, než minimumBytes
když se dosáhne konce datového proudu a throwOnEndOfStream
bude false
. To může být menší než počet bajtů přidělených ve vyrovnávací paměti, pokud tento počet bajtů není aktuálně k dispozici.
Výjimky
minimumBytes
je záporná nebo větší než délka buffer
souboru .
throwOnEndOfStream
je true
a před čtením minimumBytes
bajtů dat se dosáhne konce datového proudu.
Token zrušení byl zrušen. Tato výjimka je uložena ve vrácené úloze.
Poznámky
Pokud minimumBytes
je hodnota 0 (nula), bude tato operace čtení dokončena bez čekání na dostupná data ve streamu.