StringReader.ReadBlockAsync Metoda

Definice

Přetížení

ReadBlockAsync(Memory<Char>, CancellationToken)

Asynchronně přečte všechny znaky ze vstupního řetězce počínaje aktuální pozicí a posune aktuální pozici na konec vstupního řetězce.

ReadBlockAsync(Char[], Int32, Int32)

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

ReadBlockAsync(Memory<Char>, CancellationToken)

Zdroj:
StringReader.cs
Zdroj:
StringReader.cs
Zdroj:
StringReader.cs

Asynchronně přečte všechny znaky ze vstupního řetězce počínaje aktuální pozicí a posune aktuální pozici na konec vstupního řetězce.

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

Parametry

buffer
Memory<Char>

Když tato metoda vrátí, obsahuje znaky přečtené z aktuálního zdroje. Pokud je celkový počet přečtených znaků nula, zůstane rozsah nezměněný.

cancellationToken
CancellationToken

Token, který se má monitorovat pro žádosti o zrušení. Výchozí hodnota je None.

Návraty

Úloha představující asynchronní operaci čtení. Hodnota parametru TResult obsahuje celkový počet znaků načtených do vyrovnávací paměti.

Výjimky

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

Poznámky

ReadBlockAsync(Memory<Char>, CancellationToken) volání ReadBlock(Span<Char>) asynchronně, které zase volá Read(Span<Char>) přímo.

Platí pro

ReadBlockAsync(Char[], Int32, Int32)

Zdroj:
StringReader.cs
Zdroj:
StringReader.cs
Zdroj:
StringReader.cs

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

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

Parametry

buffer
Char[]

Když tato metoda vrátí hodnotu , obsahuje zadané pole znaků s hodnotami mezi index a (index + count - 1) nahrazenými znaky načtenými z aktuálního zdroje.

index
Int32

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

count
Int32

Maximální počet znaků, které se mají přečíst. Pokud je dosaženo konce řetězce před zadaný počet znaků je zapsán do vyrovnávací paměti, vrátí 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žadovaný počet bajtů, pokud je počet aktuálně dostupných bajtů menší než požadované číslo, nebo může být 0 (nula), pokud bylo dosaženo konce řetězce.

Atributy

Výjimky

buffer je null.

index nebo count je negativní.

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

Čtečka řetězců byla odstraněna.

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

Poznámky

Úkol se nedokončí, dokud není přečten počet znaků určený parametrem count nebo dokud není dosaženo konce řetězce.

Platí pro