Stream.EndWrite(IAsyncResult) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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.