Stream.EndWrite(IAsyncResult) Método

Definição

Termina uma operação de escrita assíncrona. (Considere usar WriteAsync(Byte[], Int32, Int32) em vez disso.)

public:
 virtual void EndWrite(IAsyncResult ^ asyncResult);
public virtual void EndWrite(IAsyncResult asyncResult);
abstract member EndWrite : IAsyncResult -> unit
override this.EndWrite : IAsyncResult -> unit
Public Overridable Sub EndWrite (asyncResult As IAsyncResult)

Parâmetros

asyncResult
IAsyncResult

Uma referência ao pedido de E/S assíncrono pendente.

Exceções

asyncResult é null.

Não está disponível um handle para a operação de escrita pendente.

-ou-

A operação pendente não suporta escrita.

asyncResult não se originou de um BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) método no fluxo atual.

O fluxo está encerrado ou ocorreu um erro interno.

Observações

No .NET Framework 4 e versões anteriores, é necessário usar métodos como BeginWrite e EndWrite para implementar operações de E/S assíncronas. Estes métodos ainda estão disponíveis no .NET Framework 4.5 para suportar código legado; no entanto, os novos métodos assíncronos, como ReadAsync, WriteAsync, CopyToAsync e FlushAsync, ajudam a implementar operações de E/S assíncronas mais facilmente.

EndWrite deve ser chamado exatamente uma vez em cada IAsyncResult a partir de BeginWrite.

Este método bloqueia até que a operação de I/O seja concluída. Erros que ocorrem durante um pedido de escrita assíncrono, como uma falha de disco durante o pedido de E/S, ocorrem no thread pool de threads e tornam-se visíveis após uma chamada para EndWrite. Exceções lançadas pelo thread pool de threads não serão visíveis ao chamar EndWrite.

Aplica-se a

Ver também