Socket.Listen メソッド

定義

オーバーロード

Listen()

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

Listen(Int32)

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

Listen()

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

public:
 void Listen();
public void Listen ();
member this.Listen : unit -> unit
Public Sub Listen ()

注釈

保留中の接続のキューの最大長は、自動的に決定されます。The maximum length of the pending connections queue is determined automatically.

適用対象

Listen(Int32)

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

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

例外

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

Socket が閉じられました。The Socket has been closed.

次のコード例では、を使用し 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

注釈

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. Acceptまたは BeginAccept を使用して、キューからの接続を受け入れます。Use Accept or BeginAccept to accept a connection from the queue.

注意

を呼び出す前にメソッドを呼び出す必要があり Bind Listen Listen ます。または、をスロー SocketException します。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.

こちらもご覧ください

適用対象