Sdílet prostřednictvím


Stream.ReadExactlyAsync Metoda

Definice

Přetížení

ReadExactlyAsync(Memory<Byte>, CancellationToken)

Asynchronně čte bajty z aktuálního datového proudu, posune pozici v rámci datového proudu až do buffer vyplnění a monitoruje žádosti o zrušení.

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

Asynchronně načte count počet bajtů z aktuálního datového proudu, posune pozici v rámci datového proudu a monitoruje požadavky na zrušení.

ReadExactlyAsync(Memory<Byte>, CancellationToken)

Zdroj:
Stream.cs
Zdroj:
Stream.cs
Zdroj:
Stream.cs

Asynchronně čte bajty z aktuálního datového proudu, posune pozici v rámci datového proudu až do buffer vyplnění a monitoruje žádosti o zrušení.

public System.Threading.Tasks.ValueTask ReadExactlyAsync (Memory<byte> buffer, System.Threading.CancellationToken cancellationToken = default);
member this.ReadExactlyAsync : Memory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function ReadExactlyAsync (buffer As Memory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask

Parametry

buffer
Memory<Byte>

Vyrovnávací paměť pro zápis dat.

cancellationToken
CancellationToken

Token, který se má monitorovat pro žádosti o zrušení.

Návraty

Úloha, která představuje asynchronní operaci čtení.

Výjimky

Konec datového proudu se dosáhne před vyplněním buffer.

Token zrušení byl zrušen. Tato výjimka se uloží do vrácené úlohy.

Poznámky

Pokud buffer je tato operace čtení prázdná, dokončí se bez čekání na dostupná data ve streamu.

Platí pro

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

Zdroj:
Stream.cs
Zdroj:
Stream.cs
Zdroj:
Stream.cs

Asynchronně načte count počet bajtů z aktuálního datového proudu, posune pozici v rámci datového proudu a monitoruje požadavky na zrušení.

public System.Threading.Tasks.ValueTask ReadExactlyAsync (byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken = default);
member this.ReadExactlyAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function ReadExactlyAsync (buffer As Byte(), offset As Integer, count As Integer, Optional cancellationToken As CancellationToken = Nothing) As ValueTask

Parametry

buffer
Byte[]

Vyrovnávací paměť pro zápis dat.

offset
Int32

Posun bajtů, při buffer kterém se mají začít zapisovat data ze streamu.

count
Int32

Počet bajtů, které se mají načíst z aktuálního datového proudu.

cancellationToken
CancellationToken

Token, který se má monitorovat pro žádosti o zrušení.

Návraty

Úloha, která představuje asynchronní operaci čtení.

Výjimky

buffer je null.

offsetje mimo hranice .buffer

-nebo-

count je negativní.

-nebo-

Rozsah určený kombinací offset a count překračuje délku buffer.

Konce datového proudu je dosaženo před čtením count počtu bajtů.

Token zrušení byl zrušen. Tato výjimka se uloží do vrácené úlohy.

Poznámky

Pokud count je hodnota 0 (nula), tato operace čtení se dokončí bez čekání na dostupná data ve streamu.

Tato metoda ukládá do úlohy, která vrací všechny výjimky nepouužování, které může vyvolat synchronní protějšek metody. Pokud je do vrácené úlohy uložena výjimka, bude tato výjimka vyvolána, když je úloha očekávána. Výjimky použití, jako ArgumentExceptionje , se stále vyvolává synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem ReadExactly(Byte[], Int32, Int32).

Platí pro