次の方法で共有


BufferedStream.WriteAsync メソッド

定義

オーバーロード

名前 説明
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

現在のバッファーストリームにバイトシーケンスを非同期的に書き込み、書き込まれたバイト数だけこのバッファーストリーム内の現在位置を進め、キャンセル要求を監視します。

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

現在のストリームにバイトシーケンスを非同期に書き込み、書き込まれたバイト数だけこのストリーム内の現在位置を進め、キャンセル要求を監視します。

WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

ソース:
BufferedStream.cs
ソース:
BufferedStream.cs
ソース:
BufferedStream.cs
ソース:
BufferedStream.cs
ソース:
BufferedStream.cs

現在のバッファーストリームにバイトシーケンスを非同期的に書き込み、書き込まれたバイト数だけこのバッファーストリーム内の現在位置を進め、キャンセル要求を監視します。

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 スレッドがブロックされ、アプリが動作していないかのように表示される Windows 8.x ストア アプリまたはデスクトップ アプリで特に重要です。 非同期メソッドは、Visual Basic および C# の async キーワードと await キーワードと組み合わせて使用されます。

CanWrite プロパティを使用して、現在のインスタンスが書き込みをサポートしているかどうかを判断します。

操作が完了する前に取り消された場合、返されるタスクには、Task.Status プロパティのTaskStatus.Canceled値が含まれます。

適用対象

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

ソース:
BufferedStream.cs
ソース:
BufferedStream.cs
ソース:
BufferedStream.cs
ソース:
BufferedStream.cs
ソース:
BufferedStream.cs

現在のストリームにバイトシーケンスを非同期に書き込み、書き込まれたバイト数だけこのストリーム内の現在位置を進め、キャンセル要求を監視します。

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[] buffer, int offset, int count, System.Threading.CancellationToken cancellationToken);
override this.WriteAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overrides Function WriteAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task

パラメーター

buffer
Byte[]

データを書き込むバッファー。

offset
Int32

ストリームへのバイトのコピーを開始する buffer の 0 から始まるバイト オフセット。

count
Int32

書き込む最大バイト数。

cancellationToken
CancellationToken

キャンセル要求を監視するトークン。

戻り値

非同期書き込み操作を表すタスク。

例外

buffernullです。

offset または count が負の値です。

offsetcountの合計がバッファー長を超えています。

ストリームは書き込みをサポートしていません。

ストリームが破棄されました。

ストリームは現在、以前の書き込み操作で使用されています。

キャンセル トークンが取り消されました。 この例外は、返されたタスクに格納されます。

注釈

キャンセル トークンを作成するには、 CancellationTokenSource クラスのインスタンスを作成し、 Token プロパティを cancellationToken パラメーターとして渡します。

このメソッドは、メソッドの同期的な例外がスローできるすべての非使用例外を返すタスクに格納します。 返されたタスクに例外が格納されている場合、その例外はタスクが待機しているときにスローされます。 ArgumentException などの使用に関する例外は、引き続き同期的にスローされます。 格納されている例外については、 Write(Byte[], Int32, Int32)によってスローされる例外を参照してください。

適用対象