CryptoStream.EndWrite(IAsyncResult) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Encerra uma operação de gravação assíncrona. (Considere o uso de WriteAsync em seu lugar.)
public:
override void EndWrite(IAsyncResult ^ asyncResult);
public override void EndWrite (IAsyncResult asyncResult);
override this.EndWrite : IAsyncResult -> unit
Public Overrides Sub EndWrite (asyncResult As IAsyncResult)
Parâmetros
- asyncResult
- IAsyncResult
Uma referência à solicitação de E/S assíncrona pendente.
Exceções
asyncResult
é null
.
Não há um identificador disponível para a operação de gravação pendente.
- ou -
A operação pendente não dá suporte à gravação.
asyncResult
não é proveniente de um método BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) no fluxo atual.
O fluxo está fechado ou ocorreu um erro interno.
Comentários
No .NET Framework 4, e em versões anteriores, você precisa usar métodos como BeginWrite e EndWrite para implementar operações de E/S assíncronas. Esses métodos ainda estão disponíveis nas versões atuais para dar suporte ao código herdado; no entanto, os novos métodos assíncronos, como ReadAsync, WriteAsync, CopyToAsynce FlushAsync, ajudam você a implementar operações de E/S assíncronas com mais facilidade.
EndWrite
deve ser chamado exatamente uma vez em cada IAsyncResult de BeginWrite.
Esse método bloqueia até que a operação de E/S seja concluída. Erros que ocorrem durante uma solicitação de gravação assíncrona, como uma falha de disco durante a solicitação de E/S, ocorrem no thread do pool de threads e ficam visíveis após uma chamada para EndWrite
. Exceções geradas pelo thread do pool de threads não ficarão visíveis ao chamar EndWrite
.