Socket.Listen(Int32) Método

Definição

Coloca o Socket A num estado de escuta.

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

Parâmetros

backlog
Int32

O comprimento máximo da fila de ligações pendentes.

Exceções

Ocorreu um erro ao tentar aceder ao soquete.

O Socket local foi encerrado.

Exemplos

O exemplo de código seguinte é usado Socket para ouvir conexões recebidas.

    // 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

Observações

Listen faz com que um orientado Socket à ligação escute tentativas de ligação recebidas. O backlog parâmetro especifica o número de ligações recebidas que podem ser enfileiradas para aceitação. Para determinar o número máximo de ligações que pode especificar, recupere o MaxConnections valor. Listen não bloqueia.

Se receber um SocketException, use a ErrorCode propriedade para obter o código de erro específico. Depois de obter este código, consulte a documentação do código de erro da API Windows versão 2 dos Sockets para uma descrição detalhada do erro. Use Accept ou BeginAccept aceite uma ligação da fila.

Note

Deve chamar o Bind método antes de chamar Listen, ou Listen irá lançar um SocketException.

Note

Esse membro gera informações de rastreamento quando você habilita o rastreamento de rede em seu aplicativo. Para mais informações, consulte Network Tracing in .NET Framework.

Note

O parâmetro de backlog está limitado a diferentes valores dependendo do Sistema Operativo. Pode especificar um valor mais alto, mas o backlog será limitado com base no Sistema Operativo.

Aplica-se a

Ver também