GZipStream.ReadAsync Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
ReadAsync(Memory<Byte>, CancellationToken) |
Liest eine Bytesequenz asynchron aus dem aktuellen GZip-Datenstrom in einen Bytebereich, erhöht die Position im GZip-Datenstrom um die Anzahl der gelesenen Bytes und überwacht Abbruchsanforderungen. |
ReadAsync(Byte[], Int32, Int32, CancellationToken) |
Liest eine Bytesequenz asynchron aus dem aktuellen GZip-Datenstrom in ein Bytearray, erhöht die Position im GZip-Datenstrom um die Anzahl der gelesenen Bytes und überwacht Abbruchsanforderungen. |
ReadAsync(Memory<Byte>, CancellationToken)
- Quelle:
- GZipStream.cs
- Quelle:
- GZipStream.cs
- Quelle:
- GZipStream.cs
Liest eine Bytesequenz asynchron aus dem aktuellen GZip-Datenstrom in einen Bytebereich, erhöht die Position im GZip-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
- 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 GZip-Datenstroms erreicht ist.
Ausnahmen
Das Abbruchtoken wurde abgebrochen. Diese Ausnahme wird in der zurückgegebenen Aufgabe gespeichert.
Hinweise
Wichtig
Ab .NET 6 liest diese Methode möglicherweise nicht mehr so viele Bytes, wie angefordert wurden. Weitere Informationen finden Sie unter Partielle und Null-Byte-Lesevorgänge in DeflateStream, GZipStream und CryptoStream.
Mit ReadAsync
der -Methode können Sie ressourcenintensive E/A-Vorgänge ausführen, ohne den Standard Thread zu blockieren. Diese Leistungsüberlegung ist besonders wichtig für Desktop-Apps, bei denen ein zeitaufwändiger Streamvorgang den UI-Thread blockieren und die App so aussehen lassen kann, als ob sie 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 TaskStatus.Canceled Wert für die Task.Status Eigenschaft.
Gilt für:
ReadAsync(Byte[], Int32, Int32, CancellationToken)
- Quelle:
- GZipStream.cs
- Quelle:
- GZipStream.cs
- Quelle:
- GZipStream.cs
Liest eine Bytesequenz asynchron aus dem aktuellen GZip-Datenstrom in ein Bytearray, erhöht die Position im GZip-Datenstrom um die Anzahl der gelesenen Bytes und überwacht Abbruchsanforderungen.
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)
Parameter
- arraybuffer
- Byte[]
Der Puffer, in den die Daten geschrieben werden sollen.
- offset
- Int32
Der Byteoffset, mit dem mit dem Schreiben von Daten aus dem GZip-Stream begonnen werden soll.
- 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 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 GZip-Datenstroms erreicht ist.
Ausnahmen
Das Abbruchtoken wurde abgebrochen. Diese Ausnahme wird in der zurückgegebenen Aufgabe gespeichert.
Hinweise
Wichtig
Ab .NET 6 liest diese Methode möglicherweise nicht mehr so viele Bytes, wie angefordert wurden. Weitere Informationen finden Sie unter Partielle und Null-Byte-Lesevorgänge in DeflateStream, GZipStream und CryptoStream.
Mit ReadAsync
der -Methode können Sie ressourcenintensive E/A-Vorgänge ausführen, ohne den Standard Thread zu blockieren. Diese Leistungsüberlegung ist besonders wichtig für Desktop-Apps, bei denen ein zeitaufwändiger Streamvorgang den UI-Thread blockieren und die App so aussehen lassen kann, als ob sie 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 TaskStatus.Canceled Wert für die Task.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.