Compartilhar via


PipeStream.EndRead(IAsyncResult) Método

Definição

Encerra uma solicitação de leitura assíncrona pendente.

public:
 override int EndRead(IAsyncResult ^ asyncResult);
public override int EndRead (IAsyncResult asyncResult);
[System.Security.SecurityCritical]
public override int EndRead (IAsyncResult asyncResult);
override this.EndRead : IAsyncResult -> int
[<System.Security.SecurityCritical>]
override this.EndRead : IAsyncResult -> int
Public Overrides Function EndRead (asyncResult As IAsyncResult) As Integer

Parâmetros

asyncResult
IAsyncResult

A referência à solicitação assíncrona pendente.

Retornos

O número de bytes que foram lidos. O valor retornado de 0 indica o fim do fluxo (o pipe foi fechado).

Atributos

Exceções

asyncResult é null.

asyncResult não é proveniente de um método BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) no fluxo atual.

O fluxo está fechado ou ocorreu um erro interno.

Comentários

Esse método retorna o número de bytes lidos na matriz de bytes especificada pela chamada anterior para BeginRead.

Passe o objeto retornado IAsyncResult para o EndRead método para determinar quantos bytes foram lidos e liberar os 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 for fechado ou um argumento inválido for passado para BeginRead, as 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 .

Aplica-se a