NetworkStream.ReadAsync Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
ReadAsync(Memory<Byte>, CancellationToken) |
Lee datos de NetworkStream y los almacena en un rango de memoria de bytes como una operación asincrónica. |
ReadAsync(Byte[], Int32, Int32, CancellationToken) |
Lee datos de NetworkStream y los almacena en un rango especificado de una matriz de bytes como una operación asincrónica. |
ReadAsync(Memory<Byte>, CancellationToken)
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
Lee datos de NetworkStream y los almacena en un rango de memoria de bytes como una operación asincrónica.
public override System.Threading.Tasks.ValueTask<int> ReadAsync (Memory<byte> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.ReadAsync : Memory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Overrides Function ReadAsync (buffer As Memory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)
Parámetros
- cancellationToken
- CancellationToken
Token para supervisar solicitudes de cancelación.
Devoluciones
Un ValueTask<TResult> que representa la operación de lectura asincrónica. El valor de la propiedad Result contiene el número total de bytes leídos en buffer
.
Excepciones
NetworkStream admite la lectura.
Se produjo un error al acceder al socket.
o bien
Se ha producido un error al leer de la red.
La clase NetworkStream está cerrada.
Se canceló el token de cancelación. Esta excepción se almacena en la tarea devuelta.
Comentarios
Este método lee tantos datos como están disponibles en buffer
y devuelve el número de bytes leídos correctamente.
Nota
Compruebe si es NetworkStream legible llamando a la CanRead propiedad . Si intenta leer desde un NetworkStream objeto que no es legible, obtendrá un InvalidOperationException.
Nota
Si recibe un IOException, compruebe la InnerException propiedad para determinar si se debe a .SocketException Si es así, use la ErrorCode propiedad para obtener el código de error específico y consulte la documentación del código de error de la API de Windows Sockets versión 2 para obtener una descripción detallada del error.
Se aplica a
ReadAsync(Byte[], Int32, Int32, CancellationToken)
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
- Source:
- NetworkStream.cs
Lee datos de NetworkStream y los almacena en un rango especificado de una matriz de bytes como una operación asincrónica.
public:
override System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <System::Byte> ^ buffer, int offset, int size, System::Threading::CancellationToken cancellationToken);
public:
override System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <System::Byte> ^ buffer, int offset, int count, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<int> ReadAsync (byte[] buffer, int offset, int size, System.Threading.CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<int> ReadAsync (byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
override this.ReadAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
override this.ReadAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overrides Function ReadAsync (buffer As Byte(), offset As Integer, size As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
Public Overrides Function ReadAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
Parámetros
- buffer
- Byte[]
El búfer en el que se escriben los datos.
- offset
- Int32
Ubicación de buffer
donde se inicia el almacenamiento de los datos.
- sizecount
- Int32
Número de bytes que se va a leer de NetworkStream.
- cancellationToken
- CancellationToken
Token para supervisar solicitudes de cancelación.
Devoluciones
Tarea que representa la operación de lectura asincrónica. El valor de la propiedad Result contiene el número total de bytes leídos en buffer
.
Excepciones
NetworkStream admite la lectura.
Se produjo un error al acceder al socket.
o bien
Se ha producido un error al leer de la red.
La clase NetworkStream está cerrada.
Se canceló el token de cancelación. Esta excepción se almacena en la tarea devuelta.
Comentarios
Este método lee los datos en buffer
y devuelve el número de bytes leídos correctamente. La ReadAsync
operación lee tantos datos como están disponibles, hasta el número de bytes especificados por el size
parámetro .
Nota
Compruebe si es NetworkStream legible llamando a la CanRead propiedad . Si intenta leer desde un NetworkStream objeto que no es legible, obtendrá un InvalidOperationException.
Nota
Si recibe un IOException, compruebe la InnerException propiedad para determinar si se debe a .SocketException Si es así, use la ErrorCode propiedad para obtener el código de error específico y consulte la documentación del código de error de la API de Windows Sockets versión 2 para obtener una descripción detallada del error.
Este método almacena en la tarea que devuelve todas las excepciones que no son de uso que puede producir el homólogo sincrónico del método. Si se almacena una excepción en la tarea devuelta, esa excepción se producirá cuando se espere a la tarea. Las excepciones de uso, como ArgumentException, se siguen produciendo de forma sincrónica. Para ver las excepciones almacenadas, vea las excepciones producidas por Read(Byte[], Int32, Int32).