Socket.EndSendFile メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > Socket.EndSendFile メソッドの意味・解説 

Socket.EndSendFile メソッド

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

保留中のファイル非同期送信終了します

名前空間: System.Net.Sockets
アセンブリ: System (system.dll 内)
構文構文

Public Sub EndSendFile ( _
    asyncResult As IAsyncResult _
)
Dim instance As Socket
Dim asyncResult As IAsyncResult

instance.EndSendFile(asyncResult)
public void EndSendFile (
    IAsyncResult asyncResult
)
public:
void EndSendFile (
    IAsyncResult^ asyncResult
)
public void EndSendFile (
    IAsyncResult asyncResult
)
public function EndSendFile (
    asyncResult : IAsyncResult
)

パラメータ

asyncResult

この非同期操作ステータス情報格納する IAsyncResult オブジェクト

例外例外
例外種類条件

NotSupportedException

このメソッドには Windows NT が必要です。

ObjectDisposedException

Socket オブジェクト閉じられています。

ArgumentNullException

asyncResult が空です。

ArgumentException

BeginSendFile メソッドへの呼び出しasyncResult返されませんでした

InvalidOperationException

EndSendFile が、非同期BeginSendFile のために以前呼び出されています。

SocketException

ソケットへのアクセス試みているときにエラー発生しました。以下の解説参照してください

解説解説

EndSendFile は、BeginSendFile開始され非同期送信操作完了します

BeginSendFile呼び出す前に、AsyncCallback デリゲート実装するコールバック メソッド作成する必要があります。このコールバック メソッド個別スレッド実行されBeginSendFile終了時呼び出されます。コールバック メソッドは、BeginSendFile メソッドからパラメータとして返されIAsyncResult オブジェクト受け取る必要があります

コールバック メソッド内では、IAsyncResult パラメータの AsyncState メソッド呼び出して送信 Socket取得しますSocket取得したら、EndSendFile メソッド呼び出して送信操作正常に完了できます

コネクションレスプロトコル使用している場合EndSendFile は、データグラム送信されるまでブロックしますコネクション指向プロトコル使用している場合EndSendFile は、ファイル全体送信されるまでブロックします送信したデータがすぐにネットワーク上に現れることは保証されません。ネットワーク効率高めるため、基になっているシステムは、十分な量の送信データ収集されるまで送信遅延することがありますBeginSendFile メソッド正常に完了した場合は、基になるシステムネットワーク送信のためにデータバッファする余地があったことを示します

メモメモ

SocketException発生した場合は、SocketException.ErrorCode プロパティ使用して具体的なエラー コード取得してください。このコード取得したら、Windows Socket Version 2 API エラー コードドキュメントエラー詳細情報確認してください。これは MSDN ライブラリから入手できます

使用例使用例

非同期通信ソケット作成して接続しリモート ホストファイル "text.txt" の非同期的な送信開始するコード例次に示しますコールバック デリゲートEndSendFile呼び出し伝送完了します

public static void AsynchronousFileSend()
{
    // Send a file to a remote device.
    
    // Establish the remote endpoint for the socket.
    IPHostEntry ipHostInfo = Dns.Resolve(Dns.GetHostName());
    IPAddress ipAddress = ipHostInfo.AddressList[0];
    IPEndPoint remoteEP = new IPEndPoint(ipAddress, 11000);

    // Create a TCP/IP socket.
    Socket client = new Socket(AddressFamily.InterNetwork,
        SocketType.Stream, ProtocolType.Tcp);

    // Connect to the remote endpoint.
    client.BeginConnect(remoteEP, 
        new AsyncCallback(ConnectCallback), client);
        
    // Wait for connect.
    connectDone.WaitOne();

    // There is a text file test.txt in the root directory.
    string fileName = "C:\\test.txt";
  
    // Send file fileName to the remote device.
    Console.WriteLine(fileName);
    client.BeginSendFile(fileName, new AsyncCallback(FileSendCallback),
 client);

    // Release the socket.
    client.Shutdown(SocketShutdown.Both);
    client.Close();
}


private static void FileSendCallback(IAsyncResult
 ar)
{
    // Retrieve the socket from the state object.
    Socket client = (Socket) ar.AsyncState;

    // Complete sending the data to the remote device.
    client.EndSendFile(ar);
    sendDone.Set();
}
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照


このページでは「.NET Framework クラス ライブラリ リファレンス」からSocket.EndSendFile メソッドを検索した結果を表示しています。
Weblioに収録されているすべての辞書からSocket.EndSendFile メソッドを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からSocket.EndSendFile メソッド を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

Socket.EndSendFile メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Socket.EndSendFile メソッドのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS