Freigeben über


MemoryStream.ReadAsync Methode

Definition

Überlädt

ReadAsync(Memory<Byte>, CancellationToken)

Liest eine Folge von Bytes asynchron aus dem aktuellen Speicherdatenstrom, schreibt diese in destination, erhöht die Position im Speicherdatenstrom um die Anzahl der gelesenen Bytes und überwacht Abbruchanforderungen.

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

Liest eine Folge von Bytes asynchron aus aktuellen Stream, erhöht die Position im Stream um die Anzahl der gelesenen Bytes und überwacht Abbruchanfragen.

ReadAsync(Memory<Byte>, CancellationToken)

Quelle:
MemoryStream.cs
Quelle:
MemoryStream.cs
Quelle:
MemoryStream.cs

Liest eine Folge von Bytes asynchron aus dem aktuellen Speicherdatenstrom, schreibt diese in destination, erhöht die Position im Speicherdatenstrom um die Anzahl der gelesenen Bytes und überwacht Abbruchanforderungen.

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

Parameter

destinationbuffer
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 Wert seiner Result-Eigenschaft enthält die Gesamtzahl der Bytes, die in destination gelesen werden. Der Ergebniswert kann weniger als die Anzahl der in destination zugeordneten Bytes sein, wenn diese Anzahl an Bytes derzeit nicht verfügbar ist, oder er kann 0 (null) sein, wenn das Ende des Speicherdatenstroms erreicht ist.

Ausnahmen

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

Gilt für:

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

Quelle:
MemoryStream.cs
Quelle:
MemoryStream.cs
Quelle:
MemoryStream.cs

Liest eine Folge von Bytes asynchron aus aktuellen Stream, erhöht die Position im Stream um die Anzahl der gelesenen Bytes und überwacht Abbruchanfragen.

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);
[System.Runtime.InteropServices.ComVisible(false)]
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>
[<System.Runtime.InteropServices.ComVisible(false)>]
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 im buffer, ab dem Daten aus dem Stream 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 Wert des TResult-Parameters enthält die Gesamtzahl der Bytes, die in den Puffer gelesen werden. 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 Datenstromende erreicht ist.

Attribute

Ausnahmen

buffer ist null.

offset oder count ist ein negativer Wert.

Die Summe von offset und count ist größer als die Pufferlänge.

Lesevorgänge werden vom Stream nicht unterstützt.

Der Stream wurde verworfen.

Der Stream wird zurzeit von einem vorherigen Lesevorgang verwendet.

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

Hinweise

Wenn der Vorgang abgebrochen wird, bevor er abgeschlossen wird, enthält die zurückgegebene Aufgabe den Canceled Wert für die Status -Eigenschaft.

Sie können ein Abbruchtoken erstellen, indem Sie eine instance der CancellationTokenSource -Klasse erstellen und die Token -Eigenschaft als cancellationToken Parameter übergeben.

Diese Methode speichert in der Aufgabe, die 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. Verwendungsausnahmen wie ArgumentExceptionwerden weiterhin synchron ausgelöst. Informationen zu den gespeicherten Ausnahmen finden Sie unter ausnahmen, die von ausgelöst werden Read(Byte[], Int32, Int32).

Gilt für: