NegotiateStream.ReadAsync 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
| 名稱 | Description |
|---|---|
| ReadAsync(Memory<Byte>, CancellationToken) |
非同步 NegotiateStream 讀取資料,並以位元組記憶體範圍儲存為非同步操作。 |
| ReadAsync(Byte[], Int32, Int32, CancellationToken) |
以異步方式從這個數據流讀取數據,並將其儲存在指定的陣列中。 |
ReadAsync(Memory<Byte>, CancellationToken)
非同步 NegotiateStream 讀取資料,並以位元組記憶體範圍儲存為非同步操作。
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)
參數
- cancellationToken
- CancellationToken
用來監控取消申請的代幣。
傳回
代表非同步讀取操作的 A ValueTask<TResult> 。 其 Result 屬性的值包含讀取到 buffer的總位元組數。
例外狀況
讀取操作失敗了。
尚未進行認證。
取消令牌也被取消了。 此例外會儲存在回傳的任務中。
備註
此方法會非同步讀取所有可用的 buffer 資料,並回傳成功讀取的位元組數。
在成功驗證之前,你不能呼叫這個方法。 要驗證,請呼叫其中一個 AuthenticateAsClient、 AuthenticateAsClientAsync、 BeginAuthenticateAsClient、 AuthenticateAsServerAuthenticateAsServerAsync、 或 BeginAuthenticateAsServer 方法。
適用於
ReadAsync(Byte[], Int32, Int32, CancellationToken)
以異步方式從這個數據流讀取數據,並將其儲存在指定的陣列中。
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)
參數
- cancellationToken
- CancellationToken
用來監控取消申請的代幣。
傳回
一個 Int32 指定從底層串流讀取的位元組數的值。 當沒有更多資料可讀取時,回傳 0。
例外狀況
讀取操作失敗了。
尚未進行認證。
取消令牌也被取消了。 此例外會儲存在回傳的任務中。
備註
此方法非同步讀取目前串流最多 count 位元組,並從 開始儲存在 bufferoffset。
在成功驗證之前,你不能呼叫這個方法。 要驗證,請呼叫其中一個 AuthenticateAsClient、 AuthenticateAsClientAsync、 BeginAuthenticateAsClient、 AuthenticateAsServerAuthenticateAsServerAsync、 或 BeginAuthenticateAsServer 方法。
此方法在任務中儲存所有非使用例外,該方法的同步對應程式可拋出這些例外。 如果回傳的任務中儲存了例外,該例外會在等待任務時拋出。 使用例外錯誤,例如 ArgumentException,仍會同步拋出。 關於儲存的例外,請參見由 Read(Byte[], Int32, Int32)拋出的例外。