Поделиться через


PipeStream.EndRead(IAsyncResult) Метод

Определение

Завершает отложенный запрос асинхронного чтения.

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

Параметры

asyncResult
IAsyncResult

Ссылка на отложенный асинхронный запрос.

Возвращаемое значение

Количество прочитанных байтов. Возвращаемое значение, равное нулю, указывает конец потока (канал закрыт).

Атрибуты

Исключения

asyncResult имеет значение null.

asyncResult не происходит из метода BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) в текущем потоке.

Поток закрыт, или произошла внутренняя ошибка.

Комментарии

Этот метод возвращает количество байтов, считанных в массив байтов, заданный при предыдущем вызове BeginRead.

Передайте возвращенный IAsyncResult объект методу EndRead , чтобы определить, сколько байтов было прочитано, и освободить ресурсы операционной системы, используемые для чтения. EndRead должен вызываться один раз для каждого вызова BeginRead. Это можно сделать либо в том же коде, который вызвал BeginRead , либо в обратном вызове, передаваемом в BeginRead.

Используйте свойство , CanRead чтобы определить, поддерживает ли текущий PipeStream объект операции чтения.

Если канал закрыт или в передается BeginReadнедопустимый аргумент , соответствующие исключения возникают немедленно. Ошибки, возникающие во время асинхронного запроса на чтение, происходят в потоке пула потоков, выполняющего запрос. Исключения возникают, когда код вызывает EndRead метод .

Применяется к