DeflateStream.WriteAsync 方法

定義

多載

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

從指定的唯讀記憶體區域,以非同步方式將壓縮的位元組寫入基礎 Deflate 資料流。

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

以非同步方式從指定位元組陣列將壓縮的位元組寫入基礎 Deflate 資料流。

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

來源:
DeflateStream.cs
來源:
DeflateStream.cs
來源:
DeflateStream.cs

從指定的唯讀記憶體區域,以非同步方式將壓縮的位元組寫入基礎 Deflate 資料流。

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

參數

buffer
ReadOnlyMemory<Byte>

資料寫入來源的記憶體區域。

cancellationToken
CancellationToken

用來監視是否有取消要求的語彙基元。 預設值是 None

傳回

表示非同步寫入作業的工作。

例外狀況

取消令牌已取消。 此例外狀況會儲存在傳回的工作中。

備註

方法 WriteAsync 可讓您執行大量資源的 I/O 作業,而不會封鎖主線程。 此效能考慮在傳統型應用程式中特別重要,其中耗時的數據流作業可以封鎖UI線程,並讓應用程式顯示為無法運作。 異步方法會與 async Visual Basic 和 C# 中的 和 await 關鍵詞搭配使用。

CanWrite使用屬性來判斷目前實例是否支援寫入。

如果作業在完成之前取消,則傳回的工作會 TaskStatus.Canceled 包含 屬性的值 Task.Status

適用於

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

來源:
DeflateStream.cs
來源:
DeflateStream.cs
來源:
DeflateStream.cs

以非同步方式從指定位元組陣列將壓縮的位元組寫入基礎 Deflate 資料流。

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

參數

arraybuffer
Byte[]

包含要壓縮之資料的緩衝區。

offset
Int32

從中開始將位元組複製到Deflate資料流的以零起始的位元組位移。

count
Int32

寫入的最大位元組數。

cancellationToken
CancellationToken

用來監視是否有取消要求的語彙基元。 預設值是 None

傳回

表示非同步寫入作業的工作。

例外狀況

取消令牌已取消。 此例外狀況會儲存在傳回的工作中。

備註

方法 WriteAsync 可讓您執行大量資源的 I/O 作業,而不會封鎖主線程。 此效能考慮在傳統型應用程式中特別重要,其中耗時的數據流作業可以封鎖UI線程,並讓應用程式顯示為無法運作。 異步方法會與 async Visual Basic 和 C# 中的 和 await 關鍵詞搭配使用。

CanWrite使用屬性來判斷目前實例是否支援寫入。

如果作業在完成之前取消,則傳回的工作會 TaskStatus.Canceled 包含 屬性的值 Task.Status

這個方法會儲存在工作中,它會傳回方法同步對應專案可以擲回的所有非使用狀況例外狀況。 如果例外狀況儲存在傳回的工作中,則會在等候工作時擲回該例外狀況。 使用狀況例外狀況,例如 ArgumentException,仍會同步擲回。 如需預存的例外狀況,請參閱 所 Write(Byte[], Int32, Int32)擲回的例外狀況。

適用於