Stream.EndWrite(IAsyncResult) Método

Definição

Encerra uma operação de gravação assíncrona.Ends an asynchronous write operation. (Considere o uso de WriteAsync(Byte[], Int32, Int32) em seu lugar.)(Consider using WriteAsync(Byte[], Int32, Int32) instead.)

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 à solicitação de E/S assíncrona pendente.A reference to the outstanding asynchronous I/O request.

Exceções

asyncResult é null.asyncResult is null.

Não há um identificador disponível para a operação de gravação pendente.A handle to the pending write operation is not available.

- ou --or-

A operação pendente não dá suporte à gravação.The pending operation does not support writing.

asyncResult não é proveniente de um método BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) no fluxo atual.asyncResult did not originate from a BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) method on the current stream.

O fluxo está fechado ou ocorreu um erro interno.The stream is closed or an internal error has occurred.

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.In the .NET Framework 4 and earlier versions, you have to use methods such as BeginWrite and EndWrite to implement asynchronous I/O operations. Esses métodos .NET Framework 4.5.NET Framework 4.5 ainda estão disponíveis no para dar suporte ao código herdado; no entanto, os novos métodos assíncronos, ReadAsync WriteAsync CopyToAsynccomo FlushAsync,, e, ajudam você a implementar operações de e/s assíncronas com mais facilidade.These methods are still available in the .NET Framework 4.5.NET Framework 4.5 to support legacy code; however, the new async methods, such as ReadAsync, WriteAsync, CopyToAsync, and FlushAsync, help you implement asynchronous I/O operations more easily.

EndWritedeve ser chamado exatamente uma vez em IAsyncResult cada BeginWritede.EndWrite must be called exactly once on every IAsyncResult from BeginWrite.

Esse método é bloqueado até que a operação de e/s seja concluída.This method blocks until the I/O operation has completed. Os 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 EndWriteficam visíveis em uma chamada para.Errors that occur during an asynchronous write request, such as a disk failure during the I/O request, occur on the thread pool thread and become visible upon a call to EndWrite. Exceções geradas pelo thread do pool de threads não estarão visíveis EndWriteao chamar.Exceptions thrown by the thread pool thread will not be visible when calling EndWrite.

Aplica-se a

Veja também