DeflateStream.EndRead(IAsyncResult) Metoda

Definice

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

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

Parametry

asyncResult
IAsyncResult

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

Návraty

Počet bajtů přečtených ze streamu mezi 0 (nulou) a počtem požadovaných bajtů. DeflateStream vrátí hodnotu 0 pouze na konci datového proudu; v opačném případě se blokuje, dokud nebude k dispozici alespoň jeden bajt.

Výjimky

asyncResult je null.

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

Během volání došlo k WaitOne()výjimce .

Koncové volání je neplatné, protože asynchronní operace čtení pro tento datový proud ještě nejsou dokončené.

-nebo-

Datový proud je null.

Poznámky

Počínaje rozhraním .NET Framework 4.5 můžete provádět asynchronní operace čtení pomocí ReadAsync metody . Metoda EndRead je stále k dispozici v aktuálních verzích pro podporu staršího kódu. Asynchronní vstupně-výstupní operace ale můžete snadněji implementovat pomocí nových asynchronních metod. Další informace najdete v tématu Asynchronní vstupně-výstupní operace souborů.

Voláním této metody určíte, kolik bajtů bylo přečteno z datového proudu. Tuto metodu lze volat jednou, aby se vrátilo množství bajtů přečtených mezi voláními a BeginReadEndRead.

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

Platí pro