Stream.EndRead(IAsyncResult) Metoda

Definice

Čeká na dokončení čekajícího asynchronního čtení. (Místo toho zvažte použití ReadAsync(Byte[], Int32, Int32) .)

public:
 virtual int EndRead(IAsyncResult ^ asyncResult);
public virtual int EndRead(IAsyncResult asyncResult);
abstract member EndRead : IAsyncResult -> int
override this.EndRead : IAsyncResult -> int
Public Overridable Function EndRead (asyncResult As IAsyncResult) As Integer

Parametry

asyncResult
IAsyncResult

Odkaz na čekající asynchronní požadavek, který se má dokončit.

Návraty

Počet bajtů přečtených z datového proudu mezi nulou (0) a počtem požadovaných bajtů. ReadAsync vrátí nulu (0), pouze pokud byly požadovány nulové bajty nebo pokud nebudou k dispozici žádné další bajty, protože je na konci datového proudu; jinak se operace čtení nedokončí, dokud nebude k dispozici alespoň jeden bajt. Pokud jsou požadovány nulové bajty, operace čtení se mohou dokončit okamžitě nebo nemusí být dokončeny, dokud nebude k dispozici alespoň jeden bajt (ale bez použití jakýchkoli dat).

Výjimky

asyncResult je null.

Popisovač čekající operace čtení není k dispozici.

nebo

Čekající operace nepodporuje čtení.

asyncResult nepochází z BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) metody v aktuálním datovém proudu.

Datový proud je zavřený nebo došlo k vnitřní chybě.

Poznámky

V rozhraní .NET Framework 4 a starších verzích musíte použít metody, jako BeginRead jsou a EndRead implementovat asynchronní vstupně-výstupní operace. Tyto metody jsou stále k dispozici v rozhraní .NET Framework 4.5 pro podporu staršího kódu; Nové asynchronní metody, například ReadAsync, WriteAsync, CopyToAsynca FlushAsync, vám však pomáhají snadněji implementovat asynchronní vstupně-výstupní operace.

Volání EndRead , které určuje, kolik bajtů se z datového proudu načetlo.

EndRead lze volat jednou na každé IAsyncResult z BeginRead.

Tato metoda blokuje, dokud se nedokončí vstupně-výstupní operace.

Platí pro

Viz také