GZipStream.ReadAsync メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
ReadAsync(Memory<Byte>, CancellationToken) |
現在の GZip ストリームからバイト メモリ領域にバイト シーケンスを非同期に読み取り、読み取られたバイト数だけ GZip ストリーム内の位置を進め、キャンセル要求を監視します。 |
ReadAsync(Byte[], Int32, Int32, CancellationToken) |
現在の GZip ストリームからバイト配列にバイト シーケンスを非同期に読み取り、読み取られたバイト数だけ GZip ストリーム内の位置を進め、キャンセル要求を監視します。 |
ReadAsync(Memory<Byte>, CancellationToken)
- ソース:
- GZipStream.cs
- ソース:
- GZipStream.cs
- ソース:
- GZipStream.cs
現在の GZip ストリームからバイト メモリ領域にバイト シーケンスを非同期に読み取り、読み取られたバイト数だけ GZip ストリーム内の位置を進め、キャンセル要求を監視します。
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
キャンセル要求を監視するためのトークン。 既定値は None です。
戻り値
非同期の読み取り操作を表すタスク。バッファーに読み取られたバイト数の合計がラップされます。 要求しただけのバイト数を読み取ることができなかった場合、結果の値はバッファーに割り当てられているバイト数より小さくなります。GZip ストリームの末尾に到達した場合は 0 (ゼロ) になることがあります。
例外
キャンセル トークンが取り消されました。 この例外は、返されたタスクに格納されます。
注釈
重要
.NET 6 以降では、このメソッドは要求されたバイト数を読み取らない可能性があります。 詳細については、「 DeflateStream、GZipStream、CryptoStream の部分読み取りと 0 バイト読み取り」を参照してください。
ReadAsync
メソッドを使用すると、メイン スレッドをブロックすることなく、リソースを大量に消費する I/O 操作を実行できます。 このパフォーマンスの考慮事項は、時間のかかるストリーム操作によって UI スレッドがブロックされ、アプリが動作していないかのように表示されるデスクトップ アプリで特に重要です。 非同期メソッドは、Visual Basic および C# の および await
キーワードと組み合わせてasync
使用されます。
プロパティを使用して、 CanRead 現在のインスタンスが読み取りをサポートしているかどうかを判断します。
操作が完了する前に取り消された場合、返されるタスクには プロパティの値がTaskStatus.CanceledTask.Status含まれます。
適用対象
ReadAsync(Byte[], Int32, Int32, CancellationToken)
- ソース:
- GZipStream.cs
- ソース:
- GZipStream.cs
- ソース:
- GZipStream.cs
現在の GZip ストリームからバイト配列にバイト シーケンスを非同期に読み取り、読み取られたバイト数だけ GZip ストリーム内の位置を進め、キャンセル要求を監視します。
public:
override System::Threading::Tasks::Task<int> ^ ReadAsync(cli::array <System::Byte> ^ array, int offset, int count, System::Threading::CancellationToken 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[] array, 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>
override this.ReadAsync : byte[] * int * int * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overrides Function ReadAsync (array As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
Public Overrides Function ReadAsync (buffer As Byte(), offset As Integer, count As Integer, cancellationToken As CancellationToken) As Task(Of Integer)
パラメーター
- arraybuffer
- Byte[]
データを書き込むバッファー。
- offset
- Int32
GZip ストリームからのデータの書き込みを開始するバイト オフセット。
- count
- Int32
読み取る最大バイト数。
- cancellationToken
- CancellationToken
キャンセル要求を監視するためのトークン。 既定値は None です。
戻り値
読み取られた合計バイト数をラップする非同期読み取り操作を表すタスク。 現在使用できるバイト数が要求した数より小さい場合、結果の値は要求したバイト数より小さくなることがあります。また、GZip ストリームの末尾に到達した場合は 0 になることがあります。
例外
キャンセル トークンが取り消されました。 この例外は、返されたタスクに格納されます。
注釈
重要
.NET 6 以降では、このメソッドは要求されたバイト数を読み取らない可能性があります。 詳細については、「 DeflateStream、GZipStream、CryptoStream の部分読み取りと 0 バイト読み取り」を参照してください。
ReadAsync
メソッドを使用すると、メイン スレッドをブロックすることなく、リソースを大量に消費する I/O 操作を実行できます。 このパフォーマンスの考慮事項は、時間のかかるストリーム操作によって UI スレッドがブロックされ、アプリが動作していないかのように表示されるデスクトップ アプリで特に重要です。 非同期メソッドは、Visual Basic および C# の および await
キーワードと組み合わせてasync
使用されます。
プロパティを使用して、 CanRead 現在のインスタンスが読み取りをサポートしているかどうかを判断します。
操作が完了する前に取り消された場合、返されるタスクには プロパティの値がTaskStatus.CanceledTask.Status含まれます。
このメソッドは、メソッドの同期例外がスローできる非使用例外をすべて返すタスクに格納します。 返されたタスクに例外が格納されている場合、その例外はタスクが待機されたときにスローされます。 などの ArgumentException使用例外は、引き続き同期的にスローされます。 格納されている例外については、 によって Read(Byte[], Int32, Int32)スローされる例外に関するページを参照してください。
適用対象
.NET