Socket.Accept Socket.Accept Socket.Accept Socket.Accept Method

定義

新しく作成された接続に対して新しい Socket を作成します。Creates a new Socket for a newly created connection.

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

戻り値

新しく作成された接続に対する SocketA Socket for a newly created connection.

例外

ソケットへのアクセスを試行しているときにエラーが発生しました。An error occurred when attempting to access the socket.

受け入れ元のソケットが、接続をリッスンしていません。The accepting socket is not listening for connections. Accept() の前に Bind(EndPoint) および Listen(Int32) を呼び出す必要があります。You must call Bind(EndPoint) and Listen(Int32) before calling Accept().

次のコード例は、単純なSocket接続します。The following code example accepts a simple Socket connection.

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します。Accept synchronously extracts the first pending connection request from the connection request queue of the listening socket, and then creates and returns a new Socket. 返されるこれを使用することはできませんSocket接続キューからその他の接続を受け入れるようにします。You cannot use this returned Socket to accept any additional connections from the connection queue. ただし、呼び出すことができます、RemoteEndPointメソッドは、返されたSocketリモート ホストのネットワーク アドレスとポート番号を識別するためにします。However, you can call the RemoteEndPoint method of the returned Socket to identify the remote host's network address and port number.

ブロッキング モードAccept受信接続の試行がキューに登録するまでブロックします。In blocking mode, Accept blocks until an incoming connection attempt is queued. 接続が受け入れられると、元のSocketキューの着信接続を要求するまで閉じることが続行されます。Once a connection is accepted, the original Socket continues queuing incoming connection requests until you close it.

非ブロッキングを使用してこのメソッドを呼び出すかどうかSocket、し、要求がキューに接続できないAcceptスロー、SocketExceptionします。If you call this method using a non-blocking Socket, and no connection requests are queued, Accept throws a SocketException. 表示された場合、SocketExceptionを使用して、SocketException.ErrorCode特定のエラー コードを取得するプロパティ。If you receive a SocketException, use the SocketException.ErrorCode property to obtain the specific error code. このコードを取得した後を参照してください、 Windows Sockets version 2 API エラー コードエラーの詳細な説明のドキュメント。After you have obtained this code, refer to the Windows Sockets version 2 API error code documentation for a detailed description of the error.

注意

呼び出しの前に、Acceptメソッドを呼び出す必要があります最初、Listenをリッスンし、受信接続要求をキューのメソッド。Before calling the Accept method, you must first call the Listen method to listen for and queue incoming connection requests.

注意

このメンバーは、アプリケーションでネットワーク トレースが有効にされている場合にトレース情報を出力します。This member outputs trace information when you enable network tracing in your application. 詳細については、次を参照してください。ネットワークのトレースを .NET Framework でします。For more information, see Network Tracing in the .NET Framework.

適用対象

こちらもご覧ください