BufferedStream.BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) Método

Definição

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

public:
 override IAsyncResult ^ BeginWrite(cli::array <System::Byte> ^ buffer, int offset, int count, AsyncCallback ^ callback, System::Object ^ state);
public override IAsyncResult BeginWrite (byte[] buffer, int offset, int count, AsyncCallback? callback, object? state);
public override IAsyncResult BeginWrite (byte[] buffer, int offset, int count, AsyncCallback callback, object state);
public override IAsyncResult BeginWrite (byte[] buffer, int offset, int count, AsyncCallback callback, object? state);
override this.BeginWrite : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
Public Overrides Function BeginWrite (buffer As Byte(), offset As Integer, count As Integer, callback As AsyncCallback, state As Object) As IAsyncResult

Parâmetros

buffer
Byte[]

O buffer que contém dados a serem gravados no fluxo atual.The buffer containing data to write to the current stream.

offset
Int32

O deslocamento de bytes baseado em zero em buffer no qual será iniciada a cópia de bytes no fluxo atual.The zero-based byte offset in buffer at which to begin copying bytes to the current stream.

count
Int32

O número máximo de bytes a serem gravados.The maximum number of bytes to write.

callback
AsyncCallback

O método a ser chamado quando a operação de gravação assíncrona for concluída.The method to be called when the asynchronous write operation is completed.

state
Object

Um objeto fornecido pelo usuário que distingue essa solicitação de gravação assíncrona específica de outras solicitações.A user-provided object that distinguishes this particular asynchronous write request from other requests.

Retornos

IAsyncResult

Um objeto que faz referência à gravação assíncrona, que ainda pode estar pendente.An object that references the asynchronous write which could still be pending.

Exceções

O tamanho de buffer menos offset é menor que count.buffer length minus offset is less than count.

buffer é null.buffer is null.

offset ou count é negativo.offset or count is negative.

Não há suporte para gravação no fluxo.The stream does not support writing.

Comentários

No .NET Framework 4 e versões anteriores, você precisa usar métodos como BeginWrite e EndWrite para implementar operações de arquivo assíncrono.In the .NET Framework 4 and earlier versions, you have to use methods such as BeginWrite and EndWrite to implement asynchronous file operations. Esses métodos ainda estão disponíveis no .NET Framework 4,5 para dar suporte ao código herdado; no entanto, os novos métodos assíncronos, como, ReadAsync WriteAsync e FlushAsync , ajudam você a implementar operações de arquivo assíncrono com mais facilidade.These methods are still available in the .NET Framework 4.5 to support legacy code; however, the new async methods, such as ReadAsync, WriteAsync, and FlushAsync, help you implement asynchronous file operations more easily.

EndWrite deve ser chamado exatamente uma vez em cada IAsyncResult de BeginWrite .EndWrite must be called exactly once on every IAsyncResult from BeginWrite. EndWrite será bloqueado até que a operação de e/s seja concluída.EndWrite will block until the I/O operation has completed.

Aplica-se a