Socket.Listen(Int32) Socket.Listen(Int32) Socket.Listen(Int32) Socket.Listen(Int32) Method

定義

Socket をリッスン状態にします。Places a Socket in a listening state.

public:
 void Listen(int backlog);
public void Listen (int backlog);
member this.Listen : int -> unit
Public Sub Listen (backlog As Integer)

パラメーター

backlog
Int32 Int32 Int32 Int32

保留中の接続のキューの最大長。The maximum length of the pending connections queue.

例外

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

次のコード例でSocketは、を使用して着信接続をリッスンします。The following code example uses Socket to listen for incoming connections.

// create the socket
Socket^ listenSocket = gcnew Socket( AddressFamily::InterNetwork,
   SocketType::Stream,
   ProtocolType::Tcp );

// bind the listening socket to the port
IPAddress^ hostIP = ( Dns::Resolve( IPAddress::Any->ToString() ) )->AddressList[ 0 ];
IPEndPoint^ ep = gcnew IPEndPoint( hostIP,port );
listenSocket->Bind( ep );

// start listening
listenSocket->Listen( backlog );
       // create the socket
       Socket listenSocket = new Socket(AddressFamily.InterNetwork, 
                                        SocketType.Stream,
                                        ProtocolType.Tcp);

       // bind the listening socket to the port
IPAddress hostIP = (Dns.Resolve(IPAddress.Any.ToString())).AddressList[0];
       IPEndPoint ep = new IPEndPoint(hostIP, port);
       listenSocket.Bind(ep); 

       // start listening
       listenSocket.Listen(backlog);
   ' create the socket
   Dim listenSocket As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
   
   ' bind the listening socket to the port
   Dim hostIP As IPAddress = Dns.Resolve(IPAddress.Any.ToString()).AddressList(0)
   Dim ep As New IPEndPoint(hostIP, port)
   listenSocket.Bind(ep)
   
   ' start listening
   listenSocket.Listen(backlog)
End Sub 'CreateAndListen

注釈

Listen接続方向Socketの接続の試行をリッスンします。Listen causes a connection-oriented Socket to listen for incoming connection attempts. パラメーター backlogは、受け入れのためにキューに登録できる着信接続の数を指定します。The backlog parameter specifies the number of incoming connections that can be queued for acceptance. 指定できる接続の最大数を決定するには、 MaxConnections値を取得します。To determine the maximum number of connections you can specify, retrieve the MaxConnections value. Listenはブロックしません。Listen does not block.

SocketException受け取った場合は、 ErrorCodeプロパティを使用して、特定のエラーコードを取得します。If you receive a SocketException, use the 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. またAcceptBeginAcceptを使用して、キューからの接続を受け入れます。Use Accept or BeginAccept to accept a connection from the queue.

注意

Bindを呼び出すListen前にメソッドを呼び出す必要がありますSocketException。またはListen 、をスローします。You must call the Bind method before calling Listen, or Listen will throw a SocketException.

注意

このメンバーは、アプリケーションでネットワーク トレースが有効にされている場合にトレース情報を出力します。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.

注意

バックログパラメーターは、オペレーティングシステムによって異なる値に制限されます。The backlog parameter is limited to different values depending on the Operating System. より高い値を指定することもできますが、バックログはオペレーティングシステムに基づいて制限されます。You may specify a higher value, but the backlog will be limited based on the Operating System.

適用対象

こちらもご覧ください