Freigeben über


BrotliStream.ReadAsync Methode

Definition

Überlädt

ReadAsync(Memory<Byte>, CancellationToken)

Liest eine Folge von Bytes asynchron aus dem aktuellen Brotli-Datenstrom, schreibt diese in einen Bytespeicherbereich, erhöht die Position im Brotli-Datenstrom um die Anzahl der gelesenen Bytes und überwacht Abbruchsanforderungen.

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

Liest eine Folge von Bytes asynchron aus dem aktuellen Brotli-Datenstrom, schreibt diese beim angegebenen Index beginnend in ein Bytearray, erhöht die Position im Brotli-Datenstrom um die Anzahl der gelesenen Bytes und überwacht Abbruchsanforderungen.

ReadAsync(Memory<Byte>, CancellationToken)

Quelle:
BrotliStream.Decompress.cs
Quelle:
BrotliStream.Decompress.cs
Quelle:
BrotliStream.Decompress.cs

Liest eine Folge von Bytes asynchron aus dem aktuellen Brotli-Datenstrom, schreibt diese in einen Bytespeicherbereich, erhöht die Position im Brotli-Datenstrom um die Anzahl der gelesenen Bytes und überwacht Abbruchsanforderungen.

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)

Parameter

buffer
Memory<Byte>

Der Bereich im Arbeitsspeicher, in den die Daten geschrieben werden sollen.

cancellationToken
CancellationToken

Das Token zum Überwachen von Abbruchanforderungen. Der Standardwert ist None.

Gibt zurück

Eine Aufgabe, die den asynchronen Lesevorgang darstellt, der die Gesamtanzahl der in den Puffer gelesenen Bytes umschließt. Der Ergebniswert kann geringer als die Anzahl der im Puffer zugeordneten Bytes sein, wenn diese Anzahl an Bytes derzeit nicht verfügbar ist, oder er kann 0 (null) sein, wenn das Ende des Brotli-Datenstroms erreicht ist.

Ausnahmen

Das Abbruchtoken wurde abgebrochen. Diese Ausnahme wird in der zurückgegebenen Aufgabe gespeichert.

Hinweise

Mit der ReadAsync-Methode können Sie ressourcenintensive E/A-Vorgänge ausführen, ohne den Standard Thread zu blockieren. Diese Überlegungen zur Leistung sind insbesondere in einer Windows 8.x Store-App oder Desktop-App wichtig, bei der ein zeitaufwendiger Streamingvorgang den UI-Thread blockieren kann und es dann den Anschein hat, dass Ihre App nicht funktioniert. Die asynchronen Methoden werden in Verbindung mit den async Schlüsselwörtern und await in Visual Basic und C# verwendet.

Verwenden Sie die CanRead -Eigenschaft, um zu bestimmen, ob die aktuelle instance Lesevorgänge unterstützt.

Wenn der Vorgang vor Abschluss abgebrochen wird, enthält die zurückgegebene Aufgabe den Canceled Wert für die Status Eigenschaft.

Gilt für:

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

Quelle:
BrotliStream.Decompress.cs
Quelle:
BrotliStream.Decompress.cs
Quelle:
BrotliStream.Decompress.cs

Liest eine Folge von Bytes asynchron aus dem aktuellen Brotli-Datenstrom, schreibt diese beim angegebenen Index beginnend in ein Bytearray, erhöht die Position im Brotli-Datenstrom um die Anzahl der gelesenen Bytes und überwacht Abbruchsanforderungen.

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)

Parameter

buffer
Byte[]

Der Puffer, in den die Daten geschrieben werden sollen.

offset
Int32

Der Byteoffset in buffer, ab dem Daten aus dem Brotli-Datenstrom geschrieben werden.

count
Int32

Die maximale Anzahl der zu lesenden Bytes.

cancellationToken
CancellationToken

Das Token zum Überwachen von Abbruchanforderungen. Der Standardwert ist None.

Gibt zurück

Eine Aufgabe, die den asynchronen Lesevorgang darstellt, der die Gesamtanzahl der in buffer gelesenen Bytes umschließt. Der Ergebniswert kann niedriger als die Anzahl der angeforderten Bytes sein, wenn die Anzahl an derzeit verfügbaren Bytes kleiner ist als die angeforderte Anzahl, oder sie kann 0 (null) sein, wenn das Ende des Brotli-Datenstroms erreicht ist.

Ausnahmen

Das Abbruchtoken wurde abgebrochen. Diese Ausnahme wird in der zurückgegebenen Aufgabe gespeichert.

Hinweise

Mit der ReadAsync-Methode können Sie ressourcenintensive E/A-Vorgänge ausführen, ohne den Standard Thread zu blockieren. Diese Überlegungen zur Leistung sind insbesondere in einer Windows 8.x Store-App oder Desktop-App wichtig, bei der ein zeitaufwendiger Streamingvorgang den UI-Thread blockieren kann und es dann den Anschein hat, dass Ihre App nicht funktioniert. Die asynchronen Methoden werden in Verbindung mit den async Schlüsselwörtern und await in Visual Basic und C# verwendet.

Verwenden Sie die CanRead -Eigenschaft, um zu bestimmen, ob die aktuelle instance Lesevorgänge unterstützt.

Wenn der Vorgang vor Abschluss abgebrochen wird, enthält die zurückgegebene Aufgabe den Canceled Wert für die Status Eigenschaft.

Diese Methode speichert in der Aufgabe, die sie alle Nichtverwendungsausnahmen zurückgibt, die die synchrone Entsprechung der Methode auslösen kann. Wenn eine Ausnahme in der zurückgegebenen Aufgabe gespeichert wird, wird diese Ausnahme ausgelöst, wenn die Aufgabe erwartet wird. Nutzungsausnahmen, z. B ArgumentException. , werden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter die von ausgelösten Read(Byte[], Int32, Int32)Ausnahmen.

Gilt für: