Stream.EndWrite(IAsyncResult) メソッド

定義

非同期書き込み操作を終了します。 (代わりに、WriteAsync(Byte[], Int32, Int32) の使用を検討してください。)

public:
 virtual void EndWrite(IAsyncResult ^ asyncResult);
public virtual void EndWrite (IAsyncResult asyncResult);
abstract member EndWrite : IAsyncResult -> unit
override this.EndWrite : IAsyncResult -> unit
Public Overridable Sub EndWrite (asyncResult As IAsyncResult)

パラメーター

asyncResult
IAsyncResult

保留状態の非同期 I/O リクエストへの参照。

例外

asyncResultnullです。

保留中の書き込み操作へのハンドルは使用できません。

- または -

保留中の操作は書き込みをサポートしていません。

asyncResult は現在のストリームの BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) メソッドから取得されませんでした。

ストリームが閉じているか、内部エラーが発生しました。

注釈

.NET Framework 4 およびそれ以前のバージョンで非同期 I/O 操作を実装するには、 BeginWriteEndWrite などのメソッドを使用する必要があります。 これらのメソッドは、レガシ コードをサポートするために .NET Framework 4.5 で引き続き使用できますが、、、 FlushAsyncなどのReadAsyncWriteAsyncCopyToAsync新しい非同期メソッドを使用すると、非同期 I/O 操作をより簡単に実装できます。

EndWriteは、 から BeginWrite1 回IAsyncResultだけ呼び出す必要があります。

このメソッドは、I/O 操作が完了するまでブロックします。 非同期書き込み要求中に発生するエラー (I/O 要求中のディスク障害など) は、スレッド プール スレッドで発生し、 の呼び出し時に EndWrite表示されます。 スレッド プール スレッドによってスローされた例外は、 を呼び出 EndWriteすときに表示されません。

適用対象

こちらもご覧ください