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

Socket.EndConnect メソッド

保留中の非同期接続要求終了します

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

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

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

パラメータ

asyncResult

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

例外例外
例外種類条件

ArgumentNullException

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

ArgumentException

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

InvalidOperationException

EndConnect は、非同期接続のために以前呼び出されています。

SocketException

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

ObjectDisposedException

Socket閉じられています。

解説解説

EndConnect は、BeginConnect メソッド開始されリモート ホスト接続非同期要求完了するブロッキング メソッドです。

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

コールバック メソッド内では、IAsyncResult パラメータの AsyncState メソッド呼び出して接続試行されSocket取得しますSocket取得したら、EndConnect メソッド呼び出して接続試行正常に完了できます

メモメモ

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

使用例使用例

非同期接続試行終了するコード例次に示しますソケット使用した非同期通信を示すコード例全体については、「ソケットコード例」を参照してください

Public Shared Sub Connect_Callback(ar
 As IAsyncResult)
   

   allDone.Set()
   Dim s As Socket = CType(ar.AsyncState, Socket)
   s.EndConnect(ar)
   Dim so2 As New StateObject()
   so2.workSocket = s
   Dim buff As Byte() =
 Encoding.ASCII.GetBytes("This is a test")
   s.BeginSend(buff, 0, buff.Length, 0, New AsyncCallback(AddressOf
 Async_Send_Receive.Send_Callback), so2)
End Sub 'Connect_Callback

allDone.Set();
Socket s = (Socket) ar.AsyncState;
s.EndConnect(ar);
StateObject so2 = new StateObject();
so2.workSocket = s;
byte[] buff = Encoding.ASCII.GetBytes("This is a test");
s.BeginSend(buff, 0, buff.Length,0,
                      new AsyncCallback(Async_Send_Receive.Send_Callback),
 so2);    
allDone->Set();
Socket^ s = safe_cast<Socket^>(ar->AsyncState);
s->EndConnect( ar );
StateObject^ so2 = gcnew StateObject;
so2->workSocket = s;
array<Byte>^ buff = Encoding::ASCII->GetBytes( "This is a test"
 );
s->BeginSend( buff, 0, buff->Length, SocketFlags::None,
   gcnew AsyncCallback( &Async_Send_Receive::Send_Callback ), so2 );
allDone.Set();
Socket s = (Socket)ar.get_AsyncState();
s.EndConnect(ar);
StateObject so2 = new StateObject();
so2.workSocket = s;
ubyte buff[] = Encoding.get_ASCII().GetBytes("This is a test");
s.BeginSend(buff, 0, buff.length, (SocketFlags)0,
    new AsyncCallback(Async_Send_Receive.Send_Callback), so2);
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
Socket クラス
Socket メンバ
System.Net.Sockets 名前空間
BeginConnect
AsyncCallback
AsyncState


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

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

辞書ショートカット

すべての辞書の索引

「Socket.EndConnect メソッド」の関連用語

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

   

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



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

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

©2025 GRAS Group, Inc.RSS