Udostępnij za pośrednictwem


BrotliStream.ReadAsync Metoda

Definicja

Przeciążenia

ReadAsync(Memory<Byte>, CancellationToken)

Asynchronicznie odczytuje sekwencję bajtów z bieżącego strumienia Brotli, zapisuje je w zakresie pamięci bajtów, rozwija pozycję w strumieniu Brotli według liczby odczytanych bajtów i monitoruje żądania anulowania.

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

Asynchronicznie odczytuje sekwencję bajtów z bieżącego strumienia Brotli, zapisuje je w tablicy bajtów rozpoczynającej się od określonego indeksu, rozwija pozycję w strumieniu Brotli przez liczbę odczytanych bajtów i monitoruje żądania anulowania.

ReadAsync(Memory<Byte>, CancellationToken)

Źródło:
BrotliStream.Decompress.cs
Źródło:
BrotliStream.Decompress.cs
Źródło:
BrotliStream.Decompress.cs

Asynchronicznie odczytuje sekwencję bajtów z bieżącego strumienia Brotli, zapisuje je w zakresie pamięci bajtów, rozwija pozycję w strumieniu Brotli według liczby odczytanych bajtów i monitoruje żądania anulowania.

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

Parametry

buffer
Memory<Byte>

Region pamięci do zapisywania danych.

cancellationToken
CancellationToken

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

Zwraca

Zadanie reprezentujące operację odczytu asynchronicznego, która opakowuje całkowitą liczbę bajtów odczytanych do buforu. Wartość wynikowa może być mniejsza niż liczba bajtów przydzielonych w buforze, jeśli liczba bajtów jest obecnie niedostępna lub może być równa 0 (zero), jeśli osiągnięto koniec strumienia Brotli.

Wyjątki

Token anulowania został anulowany. Ten wyjątek jest przechowywany w zwracanym zadaniu.

Uwagi

Metoda "ReadAsync" umożliwia wykonywanie operacji we/wy intensywnie korzystających z zasobów bez blokowania głównego wątku. Ta kwestia wydajności jest szczególnie ważna w aplikacji ze sklepu Windows 8.x lub aplikacji klasycznej, w której czasochłonna operacja strumienia może zablokować wątek interfejsu użytkownika i sprawić, że aplikacja będzie wyświetlana tak, jakby nie działała. Metody asynchroniczne są używane w połączeniu ze słowami async kluczowymi i await w języku Visual Basic i C#.

Użyj właściwości , CanRead aby określić, czy bieżące wystąpienie obsługuje odczyt.

Jeśli operacja zostanie anulowana przed jej zakończeniem, zwrócone zadanie zawiera Canceled wartość właściwości Status .

Dotyczy

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

Źródło:
BrotliStream.Decompress.cs
Źródło:
BrotliStream.Decompress.cs
Źródło:
BrotliStream.Decompress.cs

Asynchronicznie odczytuje sekwencję bajtów z bieżącego strumienia Brotli, zapisuje je w tablicy bajtów rozpoczynającej się od określonego indeksu, rozwija pozycję w strumieniu Brotli przez liczbę odczytanych bajtów i monitoruje żądania anulowania.

public:
 override System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <System::Byte> ^ buffer, int offset, int count, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<int> ReadAsync (byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
override this.ReadAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overrides Function ReadAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task(Of Integer)

Parametry

buffer
Byte[]

Bufor do zapisania danych.

offset
Int32

Przesunięcie bajtu, w buffer którym można rozpocząć zapisywanie danych ze strumienia Brotli.

count
Int32

Maksymalna liczba bajtów do odczytania.

cancellationToken
CancellationToken

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

Zwraca

Zadanie reprezentujące operację odczytu asynchronicznego, która opakowuje całkowitą liczbę bajtów odczytanych w obiekcie buffer. 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 strumienia Brotli.

Wyjątki

Token anulowania został anulowany. Ten wyjątek jest przechowywany w zwracanym zadaniu.

Uwagi

Metoda "ReadAsync" umożliwia wykonywanie operacji we/wy intensywnie korzystających z zasobów bez blokowania głównego wątku. Ta kwestia wydajności jest szczególnie ważna w aplikacji ze sklepu Windows 8.x lub aplikacji klasycznej, w której czasochłonna operacja strumienia może zablokować wątek interfejsu użytkownika i sprawić, że aplikacja będzie wyświetlana tak, jakby nie działała. Metody asynchroniczne są używane w połączeniu ze słowami async kluczowymi i await w języku Visual Basic i C#.

Użyj właściwości , CanRead aby określić, czy bieżące wystąpienie obsługuje odczyt.

Jeśli operacja zostanie anulowana przed jej zakończeniem, zwrócone zadanie zawiera Canceled wartość właściwości Status .

Ta metoda jest przechowywana w zadaniu, które zwraca wszystkie wyjątki nieużytowe, które może zgłosić synchroniczna odpowiednik metody. Jeśli wyjątek jest przechowywany w zwracanym zadaniu, ten wyjątek zostanie zgłoszony podczas oczekiwania zadania. Wyjątki użycia, takie jak ArgumentException, są nadal zgłaszane synchronicznie. W przypadku przechowywanych wyjątków zobacz wyjątki zgłoszone przez Read(Byte[], Int32, Int32)usługę .

Dotyczy