Socket.EndSendFile(IAsyncResult) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
保留中のファイルの非同期送信を終了します。
public:
void EndSendFile(IAsyncResult ^ asyncResult);
public void EndSendFile(IAsyncResult asyncResult);
member this.EndSendFile : IAsyncResult -> unit
Public Sub EndSendFile (asyncResult As IAsyncResult)
パラメーター
- asyncResult
- IAsyncResult
この非同期操作の状態情報を格納する IAsyncResult オブジェクト。
例外
.NET 8 以降のみ: ソケットがリモート ホストに接続されていません。
.NET Framework、.NET Core、および .NET 5-6 のみ: Socket が閉じられました。
asyncResult が空です。
asyncResult は、 BeginSendFile(String, AsyncCallback, Object) メソッドの呼び出しによって返されませんでした。
EndSendFile(IAsyncResult) は、以前に非同期 BeginSendFile(String, AsyncCallback, Object)に対して呼び出されました。
注釈
Important
これは互換性 API です。 新しい開発には APM (Begin* および End*) メソッドを使用しないことをお勧めします。 代わりに、 Task ベースの同等の値を使用します。
EndSendFile は、 BeginSendによって開始された操作を完了します。 一致するBeginSend呼び出しによって作成されたIAsyncResultを渡す必要があります。
コネクションレス プロトコルを使用している場合、 EndSendFile はデータグラムが送信されるまでブロックします。 接続指向プロトコルを使用している場合は、ファイル全体が送信されるまで EndSendFile ブロックします。 送信したデータがネットワークにすぐに表示される保証はありません。 ネットワーク効率を高めるために、基になるシステムは、大量の送信データが収集されるまで送信を遅らせる可能性があります。 BeginSendFile メソッドが正常に完了すると、基になるシステムに、ネットワーク送信用にデータをバッファーする領域があることを意味します。
注
SocketExceptionを受け取った場合は、SocketException.ErrorCode プロパティを使用して特定のエラー コードを取得します。 このコードを取得したら、エラーの詳細な説明については、 Windows ソケット バージョン 2 の API エラー コード のドキュメントを参照してください。
注
このメンバーは、アプリケーションでネットワーク トレースを有効にすると、トレース情報を出力します。 詳細については、「 .NET Framework でのネットワーク トレース」を参照してください。