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

Socket.EndSendTo メソッド

特定の位置への、保留中の非同期送信終了します

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

Public Function EndSendTo ( _
    asyncResult As IAsyncResult _
) As Integer
Dim instance As Socket
Dim asyncResult As IAsyncResult
Dim returnValue As Integer

returnValue = instance.EndSendTo(asyncResult)
public int EndSendTo (
    IAsyncResult asyncResult
)
public:
int EndSendTo (
    IAsyncResult^ asyncResult
)
public int EndSendTo (
    IAsyncResult asyncResult
)
public function EndSendTo (
    asyncResult : IAsyncResult
) : int

パラメータ

asyncResult

この非同期操作の状態情報およびユーザー定義データ格納する IAsyncResult。

戻り値
正常に完了した場合送信したバイト数。それ以外場合無効な Socket エラー

例外例外
例外種類条件

ArgumentNullException

asyncResultnull 参照 (Visual Basic では Nothing) です。

ArgumentException

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

InvalidOperationException

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

SocketException

ソケットへのアクセス試みているときにエラー発生しました詳細については「解説」を参照してください

ObjectDisposedException

Socket閉じられています。

解説解説

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

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

コールバック メソッド内では、IAsyncResult パラメータの AsyncState メソッド呼び出して送信 Socket取得しますSocket取得したら、EndSendTo メソッド呼び出して送信操作正常に完了し送信されたバイト数を返すことができます

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

メモメモ

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

使用例使用例

特定の位置への、保留中の非同期送信終了するコード例次に示します

   Dim so As StateObject = CType(ar.AsyncState,
 StateObject)
   Dim s As Socket = so.workSocket
   
   Dim send As Integer =
 s.EndSendTo(ar)
   
   Console.WriteLine(("The size of the message sent was :"
 + send.ToString()))
   
   s.Close()
End Sub 'SendTo_Callback
StateObject so = (StateObject) ar.AsyncState;
Socket s = so.workSocket;

int send = s.EndSendTo(ar);

   Console.WriteLine("The size of the message sent was :" + send.ToString());

s.Close();
StateObject^ so = safe_cast<StateObject^>(ar->AsyncState);
Socket^ s = so->workSocket;

int send = s->EndSendTo( ar );

Console::WriteLine( "The size of the message sent was : {0}", send );

s->Close();
StateObject so = (StateObject)ar.get_AsyncState();
Socket s = so.workSocket;
int send = s.EndSendTo(ar);
Console.WriteLine("The size of the message sent was :"
    + ((Int32)send).ToString());
s.Close();
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照


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

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

辞書ショートカット

すべての辞書の索引

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

   

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



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

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

©2025 GRAS Group, Inc.RSS