PipeStream.BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) 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.
Inicia uma operação de gravação assíncrona.
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);
[System.Security.SecurityCritical]
public override IAsyncResult BeginWrite (byte[] buffer, int offset, int count, AsyncCallback callback, object state);
override this.BeginWrite : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
[<System.Security.SecurityCritical>]
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.
- offset
- Int32
O deslocamento de bytes baseado em zero em buffer
no qual será iniciada a cópia de bytes no fluxo atual.
- count
- Int32
O número máximo de bytes a serem gravados.
- callback
- AsyncCallback
O método a ser chamado quando a operação de gravação assíncrona é concluída.
- state
- Object
Um objeto fornecido pelo usuário que distingue essa solicitação de gravação assíncrona específica de outras solicitações.
Retornos
Um objeto IAsyncResult que faz referência à operação de gravação assíncrona.
- Atributos
Exceções
buffer
é null
.
count
é maior que o número de bytes disponível no buffer
.
O pipe está fechado.
O pipe não dá suporte a operações de gravação.
O pipe está desconectado, esperando para conectar-se ou o identificador não foi definido.
O pipe está interrompido ou ocorreu outro erro de E/S.
Comentários
EndWrite deve ser chamado uma vez para cada chamada para BeginWrite. Isso pode ser feito no mesmo código que chamou BeginWrite ou em um retorno de chamada que é passado para BeginWrite.
Use a CanWrite propriedade para determinar se o objeto atual PipeStream dá suporte a operações de gravação.
Se o pipe for fechado ou um argumento inválido for passado para BeginWrite, as exceções apropriadas serão geradas imediatamente. Erros que ocorrem durante uma solicitação de gravação assíncrona ocorrem no thread do pool de threads que está executando a solicitação. As exceções são geradas quando o código chama o EndWrite método .