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


DeflateStream.EndRead(IAsyncResult) Метод

Определение

Ожидает завершения отложенного асинхронного чтения. (Вместо него рекомендуется использовать метод ReadAsync(Byte[], Int32, Int32).)

public:
 override int EndRead(IAsyncResult ^ asyncResult);
public override int EndRead (IAsyncResult asyncResult);
override this.EndRead : IAsyncResult -> int
Public Overrides Function EndRead (asyncResult As IAsyncResult) As Integer

Параметры

asyncResult
IAsyncResult

Ссылка на отложенный асинхронный запрос, который необходимо завершить.

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

Количество байтов, считанных из потока, от нуля (0) до количества запрошенных байтов. Объект DeflateStream возвращает 0 только в конце потока; в противном случае он блокируется, пока доступен хотя бы один байт.

Исключения

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

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

Исключение было вызвано во время вызова WaitOne().

Конечный вызов является недопустимым, поскольку еще не завершены операции асинхронного чтения для этого потока.

-или-

Поток имеет значение null.

Комментарии

Начиная с платформа .NET Framework 4.5 асинхронные операции чтения можно выполнять с помощью ReadAsync метода . Метод EndRead по-прежнему доступен в текущих версиях для поддержки устаревшего кода, однако вы можете проще реализовать асинхронные операции ввода-вывода с помощью новых асинхронных методов. Дополнительные сведения см. в разделе Асинхронный файловый ввод-вывод.

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

Этот метод блокируется до завершения операции ввода-вывода.

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