TextReader.ReadBlockAsync Metoda

Definice

Přetížení

Name Description
ReadBlockAsync(Memory<Char>, CancellationToken)

Asynchronně čte znaky z aktuálního datového proudu a zapisuje data do vyrovnávací paměti.

ReadBlockAsync(Char[], Int32, Int32)

Přečte zadaný maximální počet znaků z aktuální čtečky textu asynchronně a zapíše data do vyrovnávací paměti počínaje zadaným indexem.

ReadBlockAsync(Memory<Char>, CancellationToken)

Zdroj:
TextReader.cs
Zdroj:
TextReader.cs
Zdroj:
TextReader.cs
Zdroj:
TextReader.cs
Zdroj:
TextReader.cs

Asynchronně čte znaky z aktuálního datového proudu a zapisuje data do vyrovnávací paměti.

public virtual System.Threading.Tasks.ValueTask<int> ReadBlockAsync(Memory<char> buffer, System.Threading.CancellationToken cancellationToken = default);
abstract member ReadBlockAsync : Memory<char> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
override this.ReadBlockAsync : Memory<char> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Overridable Function ReadBlockAsync (buffer As Memory(Of Char), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)

Parametry

buffer
Memory<Char>

Pokud tato metoda vrátí, obsahuje zadaný blok paměti znaků nahrazené znaky přečtené z aktuálního zdroje.

cancellationToken
CancellationToken

Token pro monitorování žádostí o zrušení. Výchozí hodnota je None.

Návraty

Hodnota úloha, která představuje asynchronní operaci čtení. Hodnota parametru typu obsahuje celkový počet znaků načtených do vyrovnávací paměti. Výsledná hodnota může být menší než požadovaný počet znaků, pokud je počet aktuálně dostupných znaků menší než požadované číslo, nebo může být 0 (nula), pokud byl dosažen konec datového proudu.

Výjimky

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

Platí pro

ReadBlockAsync(Char[], Int32, Int32)

Zdroj:
TextReader.cs
Zdroj:
TextReader.cs
Zdroj:
TextReader.cs
Zdroj:
TextReader.cs
Zdroj:
TextReader.cs

Přečte zadaný maximální počet znaků z aktuální čtečky textu asynchronně a zapíše data do vyrovnávací paměti počínaje zadaným indexem.

public:
 virtual System::Threading::Tasks::Task<int> ^ ReadBlockAsync(cli::array <char> ^ buffer, int index, int count);
public virtual System.Threading.Tasks.Task<int> ReadBlockAsync(char[] buffer, int index, int count);
[System.Runtime.InteropServices.ComVisible(false)]
public virtual System.Threading.Tasks.Task<int> ReadBlockAsync(char[] buffer, int index, int count);
abstract member ReadBlockAsync : char[] * int * int -> System.Threading.Tasks.Task<int>
override this.ReadBlockAsync : char[] * int * int -> System.Threading.Tasks.Task<int>
[<System.Runtime.InteropServices.ComVisible(false)>]
abstract member ReadBlockAsync : char[] * int * int -> System.Threading.Tasks.Task<int>
override this.ReadBlockAsync : char[] * int * int -> System.Threading.Tasks.Task<int>
Public Overridable Function ReadBlockAsync (buffer As Char(), index As Integer, count As Integer) As Task(Of Integer)

Parametry

buffer
Char[]

Pokud tato metoda vrátí, obsahuje zadanou znakovou matici s hodnotami mezi index a (index + count - 1) nahrazené znaky přečtenými z aktuálního zdroje.

index
Int32

Pozice, ve buffer které začít psát.

count
Int32

Maximální počet znaků, které se mají přečíst. Pokud se konec textu dosáhne před načtením zadaného počtu znaků do vyrovnávací paměti, vrátí aktuální metoda.

Návraty

Úloha, která představuje asynchronní operaci čtení. Hodnota parametru TResult obsahuje celkový počet bajtů načtených do vyrovnávací paměti. Výsledná hodnota může být menší než počet bajtů požadovaných v případě, že je počet bajtů aktuálně k dispozici menší než požadované číslo, nebo může být 0 (nula), pokud byl dosažen konec textu.

Atributy

Výjimky

buffer je null.

index nebo count je negativní.

Součet index a count je větší než délka vyrovnávací paměti.

Čtečka textu byla odstraněna.

Čtečka je aktuálně používána předchozí operací čtení.

Poznámky

Úkol se nedokončí, dokud se nepřečte buď počet znaků zadaný parametrem count , nebo se nedosáhne konce textu.

Tato metoda ukládá do úlohy všechny výjimky bez použití, které může vyvolat synchronní protějšek metody. Pokud je výjimka uložena do vrácené úlohy, tato výjimka bude vyvolána, když je úkol očekáván. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. V případě uložených výjimek se podívejte na výjimky vyvolané ReadBlock(Char[], Int32, Int32).

Viz také

Platí pro