DeflateStream.ReadAsync Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przeciążenia
ReadAsync(Memory<Byte>, CancellationToken) |
Asynchronicznie odczytuje sekwencję bajtów z bieżącego strumienia Deflate, zapisuje je w zakresie pamięci bajtów, rozwija pozycję w strumieniu Deflate według liczby odczytanych bajtów i monitoruje żądania anulowania. |
ReadAsync(Byte[], Int32, Int32, CancellationToken) |
Asynchronicznie odczytuje sekwencję bajtów z bieżącego strumienia Deflate, zapisuje je w tablicy bajtów, rozwija pozycję w strumieniu Deflate o liczbę odczytanych bajtów i monitoruje żądania anulowania. |
ReadAsync(Memory<Byte>, CancellationToken)
- Źródło:
- DeflateStream.cs
- Źródło:
- DeflateStream.cs
- Źródło:
- DeflateStream.cs
Asynchronicznie odczytuje sekwencję bajtów z bieżącego strumienia Deflate, zapisuje je w zakresie pamięci bajtów, rozwija pozycję w strumieniu Deflate 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
- cancellationToken
- CancellationToken
Token do monitorowania żądań anulowania. Wartość domyślna to None.
Zwraca
Zadanie reprezentujące operację odczytu asynchronicznego, która opakowuje łączną liczbę bajtów odczytanych w buforze. Wartość wyniku 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 Deflate.
Wyjątki
Token anulowania został anulowany. Ten wyjątek jest przechowywany w zwróconym zadaniu.
Uwagi
Ważne
Począwszy od platformy .NET 6, ta metoda może nie odczytywać tyle bajtów, ile żądano. Aby uzyskać więcej informacji, zobacz Częściowe i zerowe bajty odczyty w deflatestream, GZipStream i CryptoStream.
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 aplikacjach klasycznych, w których czasochłonna operacja strumienia może blokować wątek interfejsu użytkownika i sprawiać, że aplikacja jest wyświetlana tak, jakby nie działała. Metody asynchroniczne są używane w połączeniu ze słowami kluczowymi async
i await
w Visual Basic i C#.
Użyj właściwości , CanRead aby określić, czy bieżące wystąpienie obsługuje odczytywanie.
Jeśli operacja zostanie anulowana przed zakończeniem, zwrócone zadanie zawiera TaskStatus.Canceled wartość właściwości Task.Status .
Dotyczy
ReadAsync(Byte[], Int32, Int32, CancellationToken)
- Źródło:
- DeflateStream.cs
- Źródło:
- DeflateStream.cs
- Źródło:
- DeflateStream.cs
Asynchronicznie odczytuje sekwencję bajtów z bieżącego strumienia Deflate, zapisuje je w tablicy bajtów, rozwija pozycję w strumieniu Deflate o liczbę odczytanych bajtów i monitoruje żądania anulowania.
public:
override System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <System::Byte> ^ array, int offset, int count, System::Threading::CancellationToken cancellationToken);
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[] array, 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>
override this.ReadAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overrides Function ReadAsync (array As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
Public Overrides Function ReadAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
Parametry
- arraybuffer
- Byte[]
Bufor do zapisania danych.
- offset
- Int32
Przesunięcie bajtów, przy którym rozpocznie się zapisywanie danych ze strumienia Deflate.
- 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 łączną liczbę bajtów odczytanych w buforze. 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 to być 0 (zero), jeśli osiągnięto koniec strumienia Deflate.
Wyjątki
Token anulowania został anulowany. Ten wyjątek jest przechowywany w zwróconym zadaniu.
Uwagi
Ważne
Począwszy od platformy .NET 6, ta metoda może nie odczytywać tyle bajtów, ile żądano. Aby uzyskać więcej informacji, zobacz Częściowe i zerowe bajty odczyty w deflatestream, GZipStream i CryptoStream.
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 aplikacjach klasycznych, w których czasochłonna operacja strumienia może blokować wątek interfejsu użytkownika i sprawiać, że aplikacja jest wyświetlana tak, jakby nie działała. Metody asynchroniczne są używane w połączeniu ze słowami kluczowymi async
i await
w Visual Basic i C#.
Użyj właściwości , CanRead aby określić, czy bieżące wystąpienie obsługuje odczytywanie.
Jeśli operacja zostanie anulowana przed zakończeniem, zwrócone zadanie zawiera TaskStatus.Canceled wartość właściwości Task.Status .
Ta metoda przechowuje w zadaniu wszystkie wyjątki inne niż użycie, które mogą zgłaszać synchroniczna odpowiednik metody. Jeśli wyjątek jest przechowywany w zwróconym zadaniu, ten wyjątek zostanie zgłoszony po oczekiwaniu na zadanie. Wyjątki użycia, takie jak ArgumentException, są nadal zgłaszane synchronicznie. Aby uzyskać informacje o przechowywanych wyjątkach, zobacz wyjątki zgłaszane przez Read(Byte[], Int32, Int32)usługę .