Поделиться через


SslStream.ReadAsync Метод

Определение

Перегрузки

ReadAsync(Memory<Byte>, CancellationToken)

Асинхронно считывает данные из этого потока и сохраняет их в заданном диапазоне памяти.

ReadAsync(Byte[], Int32, Int32, CancellationToken)

Асинхронно считывает данные из этого потока и сохраняет их в заданном диапазоне массива байтов.

ReadAsync(Memory<Byte>, CancellationToken)

Исходный код:
SslStream.cs
Исходный код:
SslStream.cs
Исходный код:
SslStream.cs

Асинхронно считывает данные из этого потока и сохраняет их в заданном диапазоне памяти.

public override System.Threading.Tasks.ValueTask<int> ReadAsync (Memory<byte> buffer, System.Threading.CancellationToken cancellationToken = default);
override this.ReadAsync : Memory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Overrides Function ReadAsync (buffer As Memory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)

Параметры

buffer
Memory<Byte>

Буфер, куда помещаются байты, считанные из этого потока.

cancellationToken
CancellationToken

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

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

Задача, представляющая асинхронную операцию чтения. Значение свойства Result содержит общее число байтов, считанных в buffer. Когда данных для чтения не остается, возвращает 0.

Исключения

Проверка подлинности не выполнялась.

Сбой операции чтения. Проверьте внутреннее исключение, если такое присутствует, чтобы определить причину сбоя.

Уже существует выполняющаяся операция чтения.

Объект закрыт.

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

Комментарии

Этот метод считывает столько данных, сколько доступно в buffer.

Невозможно выполнить несколько одновременных операций чтения.

Вы не сможете вызвать этот метод, пока не пройдете проверку подлинности.

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

ReadAsync(Byte[], Int32, Int32, CancellationToken)

Исходный код:
SslStream.cs
Исходный код:
SslStream.cs
Исходный код:
SslStream.cs

Асинхронно считывает данные из этого потока и сохраняет их в заданном диапазоне массива байтов.

public:
 override System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <System::Byte> ^ buffer, int offset, int count, System::Threading::CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<int> ReadAsync (byte[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
override this.ReadAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overrides Function ReadAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task(Of Integer)

Параметры

buffer
Byte[]

Буфер, куда помещаются байты, считанные из этого потока.

offset
Int32

Расположение (начиная с 0) в массиве, заданном параметром buffer, с которого начинается сохранение данных, считанных из этого потока.

count
Int32

Максимальное число байтов, которое должно быть считано из потока.

cancellationToken
CancellationToken

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

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

Задача, представляющая асинхронную операцию чтения. Значение свойства Result содержит общее число байтов, считанных в buffer. Когда данных для чтения не остается, возвращает 0.

Исключения

buffer имеет значение null.

Значение параметраoffset меньше 0.

-или-

Значение параметраcount меньше 0.

-или-

длина значения count больше, чем длина buffer минус offset.

Проверка подлинности не выполнялась.

Сбой операции чтения. Проверьте внутреннее исключение, если такое присутствует, чтобы определить причину сбоя.

Уже существует выполняющаяся операция чтения.

Объект закрыт.

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

Комментарии

Метод считывает максимум байтов count из потока и сохраняет их в buffer начиная с offset.

Невозможно выполнить несколько одновременных операций чтения.

Вы не сможете вызвать этот метод, пока не пройдете проверку подлинности.

Этот метод сохраняет в задаче все исключения, не относящиеся к использованию, которые может создавать синхронный аналог метода. Если исключение сохраняется в возвращаемой задаче, это исключение будет создано при ожидании задачи. Исключения использования, такие как ArgumentException, по-прежнему создаются синхронно. Хранимые исключения см. в разделе исключения, создаваемые Read(Byte[], Int32, Int32).

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