Stream.ReadExactlyAsync 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
ReadExactlyAsync(Memory<Byte>, CancellationToken) |
Lee de forma asincrónica bytes de la secuencia actual, avanza la posición dentro de la secuencia hasta |
ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken) |
Lee de forma asincrónica el |
ReadExactlyAsync(Memory<Byte>, CancellationToken)
- Source:
- Stream.cs
- Source:
- Stream.cs
- Source:
- Stream.cs
Lee de forma asincrónica bytes de la secuencia actual, avanza la posición dentro de la secuencia hasta buffer
que se rellena y supervisa las solicitudes de cancelación.
public System.Threading.Tasks.ValueTask ReadExactlyAsync (Memory<byte> buffer, System.Threading.CancellationToken cancellationToken = default);
member this.ReadExactlyAsync : Memory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function ReadExactlyAsync (buffer As Memory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask
Parámetros
- cancellationToken
- CancellationToken
Token para supervisar solicitudes de cancelación.
Devoluciones
Tarea que representa la operación de lectura asincrónica.
Excepciones
Se alcanza el final de la secuencia antes de rellenar .buffer
Se canceló el token de cancelación. Esta excepción se almacena en la tarea devuelta.
Comentarios
Cuando buffer
está vacío, esta operación de lectura se completará sin esperar a que haya datos disponibles en la secuencia.
Se aplica a
ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken)
- Source:
- Stream.cs
- Source:
- Stream.cs
- Source:
- Stream.cs
Lee de forma asincrónica el count
número de bytes de la secuencia actual, avanza la posición dentro de la secuencia y supervisa las solicitudes de cancelación.
public System.Threading.Tasks.ValueTask ReadExactlyAsync (byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken = default);
member this.ReadExactlyAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function ReadExactlyAsync (buffer As Byte(), offset As Integer, count As Integer, Optional cancellationToken As CancellationToken = Nothing) As ValueTask
Parámetros
- buffer
- Byte[]
El búfer en el que se escriben los datos.
- offset
- Int32
Posición de desplazamiento en bytes de buffer
donde se comienza a escribir los datos de la secuencia.
- count
- Int32
Número de bytes que se van a leer de la secuencia actual.
- cancellationToken
- CancellationToken
Token para supervisar solicitudes de cancelación.
Devoluciones
Tarea que representa la operación de lectura asincrónica.
Excepciones
buffer
es null
.
offset
está fuera de los límites de buffer
.
o bien
count
es negativo.
O bien
El intervalo especificado por la combinación de offset
y count
supera la longitud de buffer
.
Se alcanza el final de la secuencia antes de leer count
el número de bytes.
Se canceló el token de cancelación. Esta excepción se almacena en la tarea devuelta.
Comentarios
Cuando count
es 0 (cero), esta operación de lectura se completará sin esperar a que haya datos disponibles en la secuencia.
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, se producirá esa excepción cuando se espere la tarea. Las excepciones de uso, como ArgumentException, se siguen iniciando de forma sincrónica. Para ver las excepciones almacenadas, consulte las excepciones producidas por ReadExactly(Byte[], Int32, Int32).