Udostępnij za pośrednictwem


StringReader.ReadBlockAsync Metoda

Definicja

Przeciążenia

ReadBlockAsync(Memory<Char>, CancellationToken)

Asynchronicznie odczytuje wszystkie znaki z ciągu wejściowego rozpoczynającego się od bieżącej pozycji i przesuwa bieżącą pozycję na końcu ciągu wejściowego.

ReadBlockAsync(Char[], Int32, Int32)

Odczytuje określoną maksymalną liczbę znaków z bieżącego ciągu asynchronicznie i zapisuje dane w buforze, zaczynając od określonego indeksu.

ReadBlockAsync(Memory<Char>, CancellationToken)

Źródło:
StringReader.cs
Źródło:
StringReader.cs
Źródło:
StringReader.cs

Asynchronicznie odczytuje wszystkie znaki z ciągu wejściowego rozpoczynającego się od bieżącej pozycji i przesuwa bieżącą pozycję na końcu ciągu wejściowego.

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>

Gdy ta metoda zostanie zwrócona, zawiera znaki odczytywane z bieżącego źródła. Jeśli całkowita liczba znaków odczytanych wynosi zero, zakres pozostaje niezmodyfikowany.

cancellationToken
CancellationToken

Token do monitorowania żądań anulowania. Wartość domyślna to None.

Zwraca

Zadanie reprezentujące operację odczytu asynchronicznego. Wartość parametru TResult zawiera całkowitą liczbę znaków odczytanych do buforu.

Wyjątki

Token anulowania został anulowany. Ten wyjątek jest przechowywany w zwróconym zadaniu.

Uwagi

ReadBlockAsync(Memory<Char>, CancellationToken) wywołuje asynchronicznie ReadBlock(Span<Char>) , co z kolei wywołuje Read(Span<Char>) bezpośrednio.

Dotyczy

ReadBlockAsync(Char[], Int32, Int32)

Źródło:
StringReader.cs
Źródło:
StringReader.cs
Źródło:
StringReader.cs

Odczytuje określoną maksymalną liczbę znaków z bieżącego ciągu asynchronicznie i zapisuje dane w buforze, zaczynając od określonego indeksu.

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[]

Gdy ta metoda zwraca, zawiera określoną tablicę znaków z wartościami między index i (index + count - 1) zastąpionymi znakami odczytywanymi z bieżącego źródła.

index
Int32

Pozycja, w buffer której rozpocząć pisanie.

count
Int32

Maksymalna liczba znaków do odczytania. Jeśli koniec ciągu zostanie osiągnięty przed zapisaną określoną liczbą znaków w buforze, metoda zwróci wartość .

Zwraca

Zadanie reprezentujące operację odczytu asynchronicznego. Wartość parametru TResult zawiera całkowitą liczbę bajtów odczytanych do buforu. Wartość wyniku może być mniejsza niż liczba bajtów żądanych, jeśli liczba obecnie dostępnych bajtów jest mniejsza niż żądana liczba lub może być równa 0 (zero), jeśli osiągnięto koniec ciągu.

Atrybuty

Wyjątki

buffer to null.

index lub count jest ujemny.

Suma index wartości i count jest większa niż długość buforu.

Czytnik ciągów został usunięty.

Czytelnik jest obecnie używany przez poprzednią operację odczytu.

Uwagi

Zadanie nie zostanie ukończone do momentu odczytania liczby znaków określonych przez count parametr lub osiągnięcia końca ciągu.

Dotyczy