Partilhar via


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

Definição

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.

offset é menor que 0.

- ou -

count é menor que 0.

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 .

Aplica-se a