Stream.EndRead(IAsyncResult) Metoda

Definicja

Oczekuje na ukończenie oczekującego odczytu asynchronicznego. (Rozważ użycie ReadAsync(Byte[], Int32, Int32) zamiast tego).

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

Odwołanie do oczekującego żądania asynchronicznego do zakończenia.

Zwraca

Liczba bajtów odczytanych ze strumienia z zakresu od zera (0) do liczby żądanych bajtów. Funkcja ReadAsync zwraca zero (0) tylko wtedy, gdy zażądano zero bajtów lub jeśli nie będzie dostępnych więcej bajtów, ponieważ znajduje się na końcu strumienia; w przeciwnym razie operacje odczytu nie są wykonywane, dopóki nie będzie dostępny co najmniej jeden bajt. Jeśli zażądano zero bajtów, operacje odczytu mogą zostać ukończone natychmiast lub mogą nie zostać ukończone, dopóki co najmniej jeden bajt nie będzie dostępny (ale bez używania żadnych danych).

Wyjątki

asyncResult to null.

Dojście do oczekującej operacji odczytu jest niedostępne.

-lub-

Oczekująca operacja nie obsługuje odczytu.

asyncResult nie pochodzi z BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) metody w bieżącym strumieniu.

Strumień jest zamknięty lub wystąpił błąd wewnętrzny.

Uwagi

W programie .NET Framework w wersji 4 i starszych do implementowania asynchronicznych operacji We/Wy należy używać metod takich jak BeginRead i EndRead. Te metody są nadal dostępne w .NET Framework 4.5 do obsługi starszego kodu. Jednak nowe metody asynchroniczne, takie jak ReadAsync, WriteAsync, CopyToAsynci FlushAsync, ułatwiają implementowanie asynchronicznych operacji we/wy.

Wywołaj metodę EndRead , aby określić, ile bajtów zostało odczytanych ze strumienia.

EndRead można wywołać raz na każdym IAsyncResult obiekcie z BeginRead.

Ta metoda blokuje działanie do momentu zakończenia operacji we/wy.

Dotyczy

Zobacz też