Stream.ReadAtLeast(Span<Byte>, Int32, Boolean) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Lê pelo menos um número mínimo de bytes do fluxo atual e avança a posição dentro do fluxo pelo número de bytes lidos.
public int ReadAtLeast (Span<byte> buffer, int minimumBytes, bool throwOnEndOfStream = true);
member this.ReadAtLeast : Span<byte> * int * bool -> int
Public Function ReadAtLeast (buffer As Span(Of Byte), minimumBytes As Integer, Optional throwOnEndOfStream As Boolean = true) As Integer
Parâmetros
Uma região da memória. Quando esse método retorna, o conteúdo dessa região é substituído pelos bytes lidos do fluxo atual.
- minimumBytes
- Int32
O número mínimo de bytes a serem lidos no buffer.
- throwOnEndOfStream
- Boolean
true
para gerar uma exceção se o final do fluxo for atingido antes da leitura minimumBytes
de bytes; false
para retornar menos do que minimumBytes
quando o final do fluxo for atingido.
O padrão é true
.
Retornos
O número total de bytes lidos do buffer. É garantido que isso seja maior ou igual a minimumBytes
quando throwOnEndOfStream
for true
. Isso será menor do que minimumBytes
quando o final do fluxo for atingido e throwOnEndOfStream
for false
. Isso poderá ser menor que o número de bytes alocados no buffer se esses muitos bytes não estiverem disponíveis no momento.
Exceções
minimumBytes
é negativo ou é maior que o comprimento de buffer
.
throwOnEndOfStream
é true
e o final do fluxo é atingido antes da leitura minimumBytes
de bytes de dados.
Comentários
Quando minimumBytes
for 0 (zero), essa operação de leitura será concluída sem aguardar os dados disponíveis no fluxo.