次の方法で共有


MemoryStream.ReadAsync メソッド

定義

オーバーロード

ReadAsync(Memory<Byte>, CancellationToken)

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

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

現在のストリームからバイト シーケンスを非同期に読み取り、読み取ったバイト数だけストリーム内の位置を進め、キャンセル要求を監視します。

ReadAsync(Memory<Byte>, CancellationToken)

ソース:
MemoryStream.cs
ソース:
MemoryStream.cs
ソース:
MemoryStream.cs

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

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

パラメーター

destinationbuffer
Memory<Byte>

データを書き込むメモリの領域。

cancellationToken
CancellationToken

キャンセル要求を監視するためのトークン。 既定値は None です。

戻り値

非同期の読み取り操作を表すタスク。 その Result プロパティの値には、destination に読み取られたバイトの合計数が含まれます。 要求しただけのバイト数を読み取ることができなかった場合、結果の値は destination に割り当てられているバイト数より小さくなります。メモリ ストリームの末尾に到達した場合は 0 (ゼロ) になることがあります。

例外

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

適用対象

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

ソース:
MemoryStream.cs
ソース:
MemoryStream.cs
ソース:
MemoryStream.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);
[System.Runtime.InteropServices.ComVisible(false)]
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>
[<System.Runtime.InteropServices.ComVisible(false)>]
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

ストリームからのデータの書き込み開始位置を示す buffer 内のバイト オフセット。

count
Int32

読み取る最大バイト数。

cancellationToken
CancellationToken

キャンセル要求を監視するためのトークン。 既定値は None です。

戻り値

非同期の読み取り操作を表すタスク。 TResult パラメーターの値には、バッファーに読み込まれるバイトの合計数が含まれます。 現在使用できるバイト数が要求した数より小さい場合、結果の値は要求したバイト数より小さくなることがあります。また、ストリームの末尾に到達した場合は 0 になることがあります。

属性

例外

buffernullです。

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

offsetcount の合計が、バッファーの長さよりも大きいです。

ストリームは読み取りをサポートしません。

ストリームは破棄されています。

ストリームは、前の読み取り操作によって現在使用されています。

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

注釈

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

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

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

適用対象