Stream.ReadAtLeastAsync メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在のストリームから少なくとも最小バイト数を非同期に読み取り、読み取ったバイト数だけストリーム内の位置を進め、キャンセル要求を監視します。
public System.Threading.Tasks.ValueTask<int> ReadAtLeastAsync(Memory<byte> buffer, int minimumBytes, bool throwOnEndOfStream = true, System.Threading.CancellationToken cancellationToken = default);
member this.ReadAtLeastAsync : Memory<byte> * int * bool * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Function ReadAtLeastAsync (buffer As Memory(Of Byte), minimumBytes As Integer, Optional throwOnEndOfStream As Boolean = true, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)
パラメーター
- minimumBytes
- Int32
バッファーに読み込む最小バイト数。
- throwOnEndOfStream
- Boolean
trueストリームの末尾がバイト数のminimumBytesを読み取る前に到達した場合に例外をスローする場合は a0/>。ストリームの末尾に達したときにminimumBytes未満を返すfalse。
既定値は true です。
- cancellationToken
- CancellationToken
キャンセル要求を監視するトークン。
返品
非同期読み取り操作を表すタスク。
Result プロパティの値には、バッファーに読み込まれる合計バイト数が含まれます。 これは、throwOnEndOfStreamがtrueされるときに、minimumBytes以上であることが保証されます。 ストリームの末尾に達し、throwOnEndOfStreamがfalse場合、これはminimumBytes未満になります。 この値は、バッファーに割り当てられているバイト数より小さい場合があります (そのバイト数が現在使用できない場合)。
例外
minimumBytes が負の値であるか、 bufferの長さを超えています。
throwOnEndOfStream が true され、ストリームの末尾に到達してから、 minimumBytes バイトのデータを読み取ります。
キャンセル トークンが取り消されました。 この例外は、返されたタスクに格納されます。
注釈
minimumBytesが 0 (ゼロ) の場合、ストリーム内の使用可能なデータを待たずに、この読み取り操作が完了します。