Stream.EndRead(IAsyncResult) Método

Definición

Espera a que se complete la lectura asincrónica que se encuentra pendiente.Waits for the pending asynchronous read to complete. (Considere usar ReadAsync(Byte[], Int32, Int32) en su lugar).(Consider using ReadAsync(Byte[], Int32, Int32) instead.)

public:
 virtual int EndRead(IAsyncResult ^ asyncResult);
public virtual int EndRead (IAsyncResult asyncResult);
abstract member EndRead : IAsyncResult -> int
override this.EndRead : IAsyncResult -> int
Public Overridable Function EndRead (asyncResult As IAsyncResult) As Integer

Parámetros

asyncResult
IAsyncResult

Referencia a la solicitud asincrónica pendiente para finalizar.The reference to the pending asynchronous request to finish.

Devoluciones

El número de bytes leídos de la secuencia, que se encuentra entre cero (0) y el número de bytes solicitado.The number of bytes read from the stream, between zero (0) and the number of bytes you requested. Las secuencias solo devuelven cero (0) al final de la secuencia; de lo contrario, se deben bloquear hasta que haya al menos un byte disponible.Streams return zero (0) only at the end of the stream, otherwise, they should block until at least one byte is available.

Excepciones

asyncResult es null.asyncResult is null.

Un identificador para la operación de lectura pendiente no está disponible.A handle to the pending read operation is not available.

O bien-or-

La operación pendiente no admite lectura.The pending operation does not support reading.

asyncResult no se originó desde un método BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) de la secuencia actual.asyncResult did not originate from a BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) method on the current stream.

La secuencia está cerrada o se produjo un error interno.The stream is closed or an internal error has occurred.

Comentarios

En .NET Framework 4 y versiones anteriores, es necesario usar métodos como BeginRead y EndRead para implementar operaciones de E/S asincrónicas.In the .NET Framework 4 and earlier versions, you have to use methods such as BeginRead and EndRead to implement asynchronous I/O operations. Estos métodos siguen .NET Framework 4.5.NET Framework 4.5 estando disponibles en para admitir código heredado; sin embargo, los nuevos métodos asincrónicos, ReadAsynccomo, CopyToAsync WriteAsync, y FlushAsync, ayudan a implementar operaciones de e/s asincrónicas más fácilmente.These methods are still available in the .NET Framework 4.5.NET Framework 4.5 to support legacy code; however, the new async methods, such as ReadAsync, WriteAsync, CopyToAsync, and FlushAsync, help you implement asynchronous I/O operations more easily.

Llame EndRead a para determinar el número de bytes leídos de la secuencia.Call EndRead to determine how many bytes were read from the stream.

EndReadse puede llamar una vez en IAsyncResult cada BeginReadde.EndRead can be called once on every IAsyncResult from BeginRead.

Este método se bloquea hasta que se haya completado la operación de E/S.This method blocks until the I/O operation has completed.

Se aplica a

Consulte también: