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

Définition

Met Socket dans un état d'écoute.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)

Paramètres

backlog
Int32 Int32 Int32 Int32

Longueur maximale de la file d'attente des connexions en attente.The maximum length of the pending connections queue.

Exceptions

Une erreur s’est produite pendant la tentative d’accès au socket.An error occurred when attempting to access the socket.

Exemples

L’exemple de code suivant Socket utilise pour écouter les connexions entrantes.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

Remarques

Listenfait en sorte qu’un Socket orienté connexion écoute les tentatives de connexion entrante.Listen causes a connection-oriented Socket to listen for incoming connection attempts. Le backlog paramètre spécifie le nombre de connexions entrantes qui peuvent être mises en file d’attente d’acceptation.The backlog parameter specifies the number of incoming connections that can be queued for acceptance. Pour déterminer le nombre maximal de connexions que vous pouvez spécifier, récupérez la MaxConnections valeur.To determine the maximum number of connections you can specify, retrieve the MaxConnections value. Listenne se bloque pas.Listen does not block.

Si vous recevez un SocketException, utilisez la ErrorCode propriété pour obtenir le code d’erreur spécifique.If you receive a SocketException, use the ErrorCode property to obtain the specific error code. Une fois que vous avez obtenu ce code, reportez-vous à la documentation sur les codes d’erreur de l' API Windows Sockets version 2 pour obtenir une description détaillée de l’erreur.After you have obtained this code, refer to the Windows Sockets version 2 API error code documentation for a detailed description of the error. Utilisez Accept ouBeginAccept pour accepter une connexion à partir de la file d’attente.Use Accept or BeginAccept to accept a connection from the queue.

Notes

Vous devez appeler la Bind méthode avant d' Listenappeler ou Listen lever une SocketException.You must call the Bind method before calling Listen, or Listen will throw a SocketException.

Notes

Ce membre génère des informations de traçage lorsque vous activez le traçage réseau dans votre application.This member outputs trace information when you enable network tracing in your application. Pour plus d’informations, consultez la page traçage réseau dans le .NET Framework.For more information, see Network Tracing in the .NET Framework.

Notes

Le paramètre backlog est limité à des valeurs différentes en fonction du système d’exploitation.The backlog parameter is limited to different values depending on the Operating System. Vous pouvez spécifier une valeur plus élevée, mais le backlog sera limité en fonction du système d’exploitation.You may specify a higher value, but the backlog will be limited based on the Operating System.

S’applique à

Voir aussi