Stream.EndWrite(IAsyncResult) Metoda

Definicja

Kończy asynchroniczną operację zapisu. (Rozważ użycie WriteAsync(Byte[], Int32, Int32) zamiast tego).

C#
public virtual void EndWrite (IAsyncResult asyncResult);

Parametry

asyncResult
IAsyncResult

Odwołanie do zaległego żądania we/wy asynchronicznego.

Wyjątki

asyncResult to null.

Dojście do oczekującej operacji zapisu nie jest dostępne.

-lub-

Oczekująca operacja nie obsługuje zapisu.

asyncResult nie pochodzi z BeginWrite(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 BeginWrite i EndWrite. 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.

EndWritemusi być wywoływana dokładnie raz na każdym IAsyncResult z .BeginWrite

Ta metoda blokuje działanie do momentu zakończenia operacji we/wy. Błędy występujące podczas asynchronicznego żądania zapisu, takie jak awaria dysku podczas żądania we/wy, występują w wątku puli wątków i stają się widoczne po wywołaniu metody EndWrite. Wyjątki zgłoszone przez wątek puli wątków nie będą widoczne podczas wywoływania metody EndWrite.

Dotyczy

Produkt Wersje
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Zobacz też