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.
Этот метод блокируется до завершения операции ввода-вывода.