語言

BrotliStream.ReadAsync 方法

定義

多載

名稱 Description
ReadAsync(Memory<Byte>, CancellationToken)

非同步讀取目前 Brotli 串流中的一串位元組,將它們寫入位元組記憶體範圍,依讀取位元組數推進 Brotli 串流中的位置,並監控取消請求。

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

非同步讀取目前 Brotli 串流的一串位元組,將它們寫入從指定索引開始的位元組陣列,依讀取位元組數推進 Brotli 串流中的位置,並監控取消請求。

ReadAsync(Memory<Byte>, CancellationToken)

來源:
BrotliStream.Decompress.cs
來源:
BrotliStream.Decompress.cs
來源:
BrotliStream.Decompress.cs
來源:
BrotliStream.Decompress.cs
來源:
BrotliStream.Decompress.cs

非同步讀取目前 Brotli 串流中的一串位元組,將它們寫入位元組記憶體範圍,依讀取位元組數推進 Brotli 串流中的位置,並監控取消請求。

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

用來監控取消申請的代幣。 預設值為 None。

傳回

一個任務代表非同步讀取操作,將讀取的總位元組數包裹到緩衝區。 若目前沒有該數量的位元組可用,結果值可能小於緩衝區中分配的位元組數;若已到達 Brotli 串流的終點,則可為 0(0)。

例外狀況

取消令牌也被取消了。 此例外會儲存在回傳的任務中。

備註

「ReadAsync」方法讓你能執行資源密集型的 I/O 操作,而不阻塞主執行緒。 在 Windows 8.x 市集應用程式或傳統型應用程式中,此效能考慮特別重要,其中耗時的串流作業可能會封鎖 UI 線程,並讓應用程式看起來好像無法運作。 非同步方法與 async 和 await 關鍵字搭配使用 Visual Basic 和 C# 中。

利用該 CanRead 屬性判斷目前實例是否支援讀取。

若操作在完成前被取消,回傳的任務會包含 Canceled 該 Status 屬性的值。

適用於

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

來源:
BrotliStream.Decompress.cs
來源:
BrotliStream.Decompress.cs
來源:
BrotliStream.Decompress.cs
來源:
BrotliStream.Decompress.cs
來源:
BrotliStream.Decompress.cs

非同步讀取目前 Brotli 串流的一串位元組,將它們寫入從指定索引開始的位元組陣列,依讀取位元組數推進 Brotli 串流中的位置,並監控取消請求。

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

從 Brotli 串流開始寫入資料的位元組偏移 buffer 量。

count
Int32

最大可讀取的位元組數。

cancellationToken
CancellationToken

用來監控取消申請的代幣。 預設值為 None。

傳回

一個代表非同步讀取操作的任務,將讀取的總位元組數包裝進 buffer。 若目前可用位元組數少於請求的位元組數,結果值可小於請求的位元組數;若已到達 Brotli 串流的終點,則可為 0(0)。

例外狀況

取消令牌也被取消了。 此例外會儲存在回傳的任務中。

備註

「ReadAsync」方法讓你能執行資源密集型的 I/O 操作,而不阻塞主執行緒。 在 Windows 8.x 市集應用程式或傳統型應用程式中,此效能考慮特別重要,其中耗時的串流作業可能會封鎖 UI 線程,並讓應用程式看起來好像無法運作。 非同步方法與 async 和 await 關鍵字搭配使用 Visual Basic 和 C# 中。

利用該 CanRead 屬性判斷目前實例是否支援讀取。

若操作在完成前被取消,回傳的任務會包含 Canceled 該 Status 屬性的值。

此方法在任務中儲存所有非使用例外,該方法的同步對應程式可拋出這些例外。 如果回傳的任務中儲存了例外,該例外會在等待任務時拋出。 使用例外錯誤,例如 ArgumentException,仍會同步拋出。 關於儲存的例外,請參見由 Read(Byte[], Int32, Int32)拋出的例外。

適用於