Stream.ReadAtLeastAsync Метод

Определение

Асинхронно считывает по крайней мере минимальное количество байтов из текущего потока, перемещает положение в потоке по количеству операций чтения байтов и отслеживает запросы на отмену.

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)

Параметры

buffer
Memory<Byte>

Область памяти для записи данных в.

minimumBytes
Int32

Минимальное количество байтов для чтения в буфер.

throwOnEndOfStream
Boolean

true , чтобы вызвать исключение, если конец потока достигнут до чтения minimumBytes байтов; false чтобы вернуться меньше, чем minimumBytes при достижении конца потока. Значение по умолчанию — true.

cancellationToken
CancellationToken

Маркер для отслеживания запросов на отмену.

Возвращаемое значение

Задача, представляющая асинхронную операцию чтения. Значение его Result свойства содержит общее количество байтов, считываемых в буфер. Это гарантируется, что оно больше или равно minimumBytesthrowOnEndOfStream.true Это будет меньше, чем minimumBytes при достижении конца потока.throwOnEndOfStreamfalse Это может быть меньше количества байтов, выделенных в буфере, если в данный момент не доступно много байтов.

Исключения

minimumBytes является отрицательным или больше длины buffer.

throwOnEndOfStreamtrue и конец потока достигается перед чтением minimumBytes байтов данных.

Маркер отмены был отменен. Это исключение хранится в возвращаемой задаче.

Комментарии

Если minimumBytes значение равно 0 (ноль), эта операция чтения будет завершена без ожидания доступных данных в потоке.

Применяется к