BufferedStream.BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) 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.
Inicia uma operação de escrita assíncrona. (Considere usar WriteAsync(Byte[], Int32, Int32, CancellationToken) em vez disso.)
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);
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 para escrever no fluxo atual.
- offset
- Int32
O deslocamento de bytes baseado em zero em buffer que se deve começar a copiar bytes para o fluxo atual.
- count
- Int32
O número máximo de bytes a escrever.
- callback
- AsyncCallback
O método a ser chamado quando a operação de escrita assíncrona for concluída.
- state
- Object
Um objeto fornecido pelo utilizador que distingue este pedido de escrita assíncrono particular de outros pedidos.
Devoluções
Um objeto que faz referência à escrita assíncrona, que ainda pode estar pendente.
Exceções
buffer comprimento menos offset é menor que count.
buffer é null.
offset ou count é negativo.
O stream não suporta escrita.
Observações
No .NET Framework 4 e versões anteriores, é necessário usar métodos como BeginWrite e EndWrite para implementar operações de ficheiros 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 e FlushAsync, ajudam a implementar operações de ficheiros assíncronas mais facilmente.
EndWrite deve ser chamado exatamente uma vez em cada IAsyncResult a partir de BeginWrite. EndWrite irá bloquear até que a operação de E/S esteja concluída.