Udostępnij za pośrednictwem


Stream.EndRead(IAsyncResult) Metoda

Definicja

Czeka 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 zera 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 wymagane są zero bajtów, operacje odczytu mogą zostać zakoń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 nie jest dostę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ć liczbę bajtów odczytanych ze strumienia.

EndReadmoże być wywoływany raz na każdym IAsyncResult z .BeginRead

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

Dotyczy

Zobacz też