PipeStream.BeginRead(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 leitura assíncrona.
public:
override IAsyncResult ^ BeginRead(cli::array <System::Byte> ^ buffer, int offset, int count, AsyncCallback ^ callback, System::Object ^ state);
public override IAsyncResult BeginRead(byte[] buffer, int offset, int count, AsyncCallback? callback, object? state);
public override IAsyncResult BeginRead(byte[] buffer, int offset, int count, AsyncCallback callback, object state);
[System.Security.SecurityCritical]
public override IAsyncResult BeginRead(byte[] buffer, int offset, int count, AsyncCallback callback, object state);
override this.BeginRead : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
[<System.Security.SecurityCritical>]
override this.BeginRead : byte[] * int * int * AsyncCallback * obj -> IAsyncResult
Public Overrides Function BeginRead (buffer As Byte(), offset As Integer, count As Integer, callback As AsyncCallback, state As Object) As IAsyncResult
Parâmetros
- buffer
- Byte[]
O buffer no qual ler dados.
- offset
- Int32
O deslocamento de bytes no buffer qual começar a leitura.
- count
- Int32
O número máximo de bytes a serem lidos.
- callback
- AsyncCallback
O método a ser chamado quando a operação de leitura assíncrona é concluída.
- state
- Object
Um objeto fornecido pelo usuário que distingue essa solicitação de leitura assíncrona específica de outras solicitações.
Retornos
Um IAsyncResult objeto que faz referência à leitura assíncrona.
- Atributos
Exceções
buffer é null.
count é maior que o número de bytes disponíveis em buffer.
O cano está fechado.
O pipe não dá suporte a operações de leitura.
O pipe está desconectado, aguardando para se conectar ou o identificador não foi definido.
O pipe está quebrado ou ocorreu outro erro de E/S.
Comentários
Passe o objeto retornado IAsyncResult para o EndRead método para determinar quantos bytes foram lidos e liberar recursos do sistema operacional usados para leitura. EndRead deve ser chamado uma vez para cada chamada para BeginRead. Isso pode ser feito no mesmo código que chamou BeginRead ou em um retorno de chamada que é passado para BeginRead.
Use a CanRead propriedade para determinar se o objeto atual PipeStream dá suporte a operações de leitura.
Se o pipe estiver fechado ou um argumento inválido for passado, BeginReadas exceções apropriadas serão geradas imediatamente. Erros que ocorrem durante uma solicitação de leitura 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 EndRead método.