Stream.ReadAtLeastAsync Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
O Assíncrono lê pelo menos um número mínimo de bytes do fluxo atual, avança a posição dentro do fluxo pelo número de bytes lidos e monitoriza pedidos de cancelamento.
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)
Parâmetros
- minimumBytes
- Int32
O número mínimo de bytes para ler no buffer.
- throwOnEndOfStream
- Boolean
true lançar uma exceção se o fim do fluxo for alcançado antes da leitura minimumBytes dos bytes; false devolver menos do que minimumBytes quando o fim do fluxo é atingido.
A predefinição é true.
- cancellationToken
- CancellationToken
O token para monitorizar pedidos de cancelamento.
Devoluções
Uma tarefa que representa a operação de leitura assíncrona. O valor da sua Result propriedade contém o número total de bytes lidos no buffer. Isto é garantido como maior ou igual a minimumBytes quando throwOnEndOfStream é true. Isto será menor do que minimumBytes quando se atinge o fim do fluxo e throwOnEndOfStream é false. Isto pode ser inferior ao número de bytes alocados no buffer se esse número de bytes não estiver disponível atualmente.
Exceções
minimumBytes é negativo, ou é maior que o comprimento de buffer.
throwOnEndOfStream é true e o fim do fluxo é alcançado antes de ler minimumBytes bytes de dados.
O token de cancelamento foi cancelado. Esta exceção é armazenada na tarefa devolvida.
Observações
Quando minimumBytes é 0 (zero), esta operação de leitura será concluída sem esperar pelos dados disponíveis no fluxo.