Freigeben über


BufferedStream.EndRead(IAsyncResult) Methode

Definition

Wartet, bis der ausstehende asynchrone Lesevorgang abgeschlossen ist. (Verwenden Sie stattdessen ReadAsync(Byte[], Int32, Int32, CancellationToken).)

public:
 override int EndRead(IAsyncResult ^ asyncResult);
public override int EndRead (IAsyncResult asyncResult);
override this.EndRead : IAsyncResult -> int
Public Overrides Function EndRead (asyncResult As IAsyncResult) As Integer

Parameter

asyncResult
IAsyncResult

Der Verweis auf die ausstehende asynchrone Anforderung, die abgewartet werden soll.

Gibt zurück

Die Anzahl der aus dem Stream gelesenen Bytes. Diese Anzahl kann zwischen 0 und der Anzahl der angeforderten Bytes liegen. Streams geben nur am Ende des Streams nur 0 zurück, andernfalls sollten sie blockieren, bis mindestens 1 Byte verfügbar ist.

Ausnahmen

asyncResult ist null.

Dieses IAsyncResult-Objekt wurde nicht durch Aufrufen von BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) für diese Klasse erstellt.

Hinweise

In der .NET Framework 4 und früheren Versionen erforderlich, wie z. B. BeginRead und EndRead , asynchrone Datei-Vorgänge zu implementieren. Diese Methoden sind weiterhin im .NET Framework 4.5 verfügbar, um Legacycode zu unterstützen. Die neuen asynchronen Methoden wie ReadAsync, WriteAsyncund FlushAsynchelfen Ihnen jedoch, asynchrone Dateivorgänge einfacher zu implementieren.

EndRead muss mit diesem IAsyncResult aufgerufen werden, um herauszufinden, wie viele Bytes gelesen wurden.

Gilt für: