Socket.Accept メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
新しく作成された接続に対して新しい Socket を作成します。
public:
System::Net::Sockets::Socket ^ Accept();
public System.Net.Sockets.Socket Accept ();
member this.Accept : unit -> System.Net.Sockets.Socket
Public Function Accept () As Socket
戻り値
新しく作成された接続に対する Socket。
例外
ソケットへのアクセスを試行しているときにエラーが発生しました。
Socket が閉じられました。
受け入れ元のソケットが、接続をリッスンしていません。 Accept() の前に Bind(EndPoint) および Listen(Int32) を呼び出す必要があります。
例
次のコード例では、単純 Socket な接続を受け入れます。
protected:
void AcceptMethod( Socket^ listeningSocket )
{
Socket^ mySocket = listeningSocket->Accept();
}
protected void AcceptMethod(Socket listeningSocket)
{
Socket mySocket = listeningSocket.Accept();
}
Protected Sub AcceptMethod(listeningSocket As Socket)
Dim mySocket As Socket = listeningSocket.Accept()
End Sub
注釈
Accept は、リッスンしているソケットの接続要求キューから最初の保留中の接続要求を同期的に抽出し、新 Socketしい を作成して返します。 この値を Socket 使用して、接続キューからの追加の接続を受け入れることはできません。 ただし、返された Socket の メソッドをRemoteEndPoint呼び出して、リモート ホストのネットワーク アドレスとポート番号を識別できます。
ブロッキング モードでは、 Accept 着信接続の試行がキューに登録されるまでブロックします。 接続が受け入れられると、元 Socket のは受信接続要求を閉じるまでキューに入れ続けます。
非ブロッキング Socketを使用してこのメソッドを呼び出し、接続要求がキューに入っていない場合、 Accept は を SocketExceptionスローします。 を受け取った場合は SocketException、 プロパティを SocketException.ErrorCode 使用して特定のエラー コードを取得します。 このコードを取得したら、エラーの詳細な説明については、 Windows ソケット バージョン 2 API エラー コード のドキュメントを参照してください。
Note
このメンバーは、アプリケーションでネットワーク トレースが有効にされている場合にトレース情報を出力します。 詳細については、「.NET Frameworkのネットワーク トレース」を参照してください。
適用対象
こちらもご覧ください
.NET