Stream.EndRead(IAsyncResult) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
保留中の非同期読み取りが完了するまで待機します。 (代わりに、ReadAsync(Byte[], Int32, Int32) の使用を検討してください。)
public:
virtual int EndRead(IAsyncResult ^ asyncResult);
public virtual int EndRead (IAsyncResult asyncResult);
abstract member EndRead : IAsyncResult -> int
override this.EndRead : IAsyncResult -> int
Public Overridable Function EndRead (asyncResult As IAsyncResult) As Integer
パラメーター
- asyncResult
- IAsyncResult
終了させる保留状態の非同期リクエストへの参照。
戻り値
ストリームから読み取られたバイト数。ゼロ (0) から要求されたバイト数の間。 ReadAsync は、0 バイトが要求された場合、またはストリームの末尾にあるため、それ以上バイトが使用できない場合にのみ、0 (0) を返します。それ以外の場合、読み取り操作は、少なくとも 1 バイトが使用可能になるまで完了しません。 0 バイトが要求された場合、読み取り操作はすぐに完了するか、少なくとも 1 バイトが使用可能になるまで完了しない場合があります (ただし、データは使用されません)。
例外
asyncResult
が null
です。
asyncResult
は現在のストリームの BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) メソッドから取得されませんでした。
ストリームが閉じているか、内部エラーが発生しました。
注釈
.NET Framework 4 およびそれ以前のバージョンで非同期 I/O 操作を実装するには、 BeginRead 、 EndRead などのメソッドを使用する必要があります。 これらのメソッドは、レガシ コードをサポートするために .NET Framework 4.5 で引き続き使用できますが、、、 FlushAsyncなどのReadAsyncWriteAsyncCopyToAsync新しい非同期メソッドを使用すると、非同期 I/O 操作をより簡単に実装できます。
を呼び出 EndRead
して、ストリームから読み取られたバイト数を確認します。
EndRead
は、 からBeginRead毎回 IAsyncResult 1 回呼び出すことができます。
このメソッドは、I/O 操作が完了するまでブロックします。
適用対象
こちらもご覧ください
.NET