Stream.ReadAtLeastAsync Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Legge in modo asincrono almeno un numero minimo di byte dal flusso corrente, avanza la posizione all'interno del flusso in base al numero di byte letti e monitora le richieste di annullamento.
public System.Threading.Tasks.ValueTask<int> ReadAtLeastAsync (Memory<byte> buffer, int minimumBytes, bool throwOnEndOfStream = true, System.Threading.CancellationToken cancellationToken = default);
member this.ReadAtLeastAsync : Memory<byte> * int * bool * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Function ReadAtLeastAsync (buffer As Memory(Of Byte), minimumBytes As Integer, Optional throwOnEndOfStream As Boolean = true, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)
Parametri
- minimumBytes
- Int32
Numero minimo di byte da leggere nel buffer.
- throwOnEndOfStream
- Boolean
true
per generare un'eccezione se la fine del flusso viene raggiunta prima della lettura minimumBytes
di byte; false
per restituire meno di minimumBytes
quando viene raggiunta la fine del flusso.
Il valore predefinito è true
.
- cancellationToken
- CancellationToken
Token da monitorare per le richieste di annullamento.
Restituisce
Attività che rappresenta l'operazione di lettura asincrona. Il valore della proprietà Result contiene il numero totale di byte letti nel buffer. Questo è garantito essere maggiore o uguale a minimumBytes
quando throwOnEndOfStream
è true
. Questa operazione sarà minore di minimumBytes
quando viene raggiunta la fine del flusso ed throwOnEndOfStream
è false
. Questo può essere minore del numero di byte allocati nel buffer se tale numero di byte non è attualmente disponibile.
Eccezioni
minimumBytes
è negativo o è maggiore della lunghezza di buffer
.
throwOnEndOfStream
è true
e la fine del flusso viene raggiunta prima di leggere minimumBytes
byte di dati.
Il token di annullamento è stato annullato. Questa eccezione viene archiviata nell'attività restituita.
Commenti
Quando minimumBytes
è 0 (zero), questa operazione di lettura verrà completata senza attendere i dati disponibili nel flusso.