Udostępnij za pośrednictwem


Socket.Listen Metoda

Definicja

Przeciążenia

Listen()

Socket Places w stanie nasłuchiwania.

Listen(Int32)

Socket Places w stanie nasłuchiwania.

Listen()

Źródło:
Socket.cs
Źródło:
Socket.cs
Źródło:
Socket.cs

Socket Places w stanie nasłuchiwania.

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

Uwagi

Maksymalna długość kolejki oczekujących połączeń jest określana automatycznie.

Dotyczy

Listen(Int32)

Źródło:
Socket.cs
Źródło:
Socket.cs
Źródło:
Socket.cs

Socket Places w stanie nasłuchiwania.

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

Parametry

backlog
Int32

Maksymalna długość kolejki oczekujących połączeń.

Wyjątki

Wystąpił błąd podczas próby uzyskania dostępu do gniazda.

Element Socket został zamknięty.

Przykłady

Poniższy przykład kodu używa Socket metody do nasłuchiwania połączeń przychodzących.

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

Uwagi

Listen powoduje, że połączenie jest zorientowane Socket na nasłuchiwanie prób połączenia przychodzącego. Parametr backlog określa liczbę połączeń przychodzących, które można w kolejce do akceptacji. Aby określić maksymalną liczbę połączeń, które można określić, pobierz MaxConnections wartość. Listen nie blokuje.

Jeśli zostanie wyświetlony element SocketException, użyj ErrorCode właściwości , aby uzyskać określony kod błędu. Po uzyskaniu tego kodu zapoznaj się z dokumentacją kodu błędu interfejsu API Windows Sockets w wersji 2 , aby uzyskać szczegółowy opis błędu. Użyj polecenia Accept lub BeginAccept , aby zaakceptować połączenie z kolejki.

Uwaga

Przed wywołaniem Listenmetody należy wywołać Bind metodę lub Listen zgłosi błąd SocketException.

Uwaga

Ten element członkowski generuje informacje ze śledzenia pod warunkiem włączenia funkcji śledzenia sieci w aplikacji. Aby uzyskać więcej informacji, zobacz Śledzenie sieci w .NET Framework.

Uwaga

Parametr listy prac jest ograniczony do różnych wartości w zależności od systemu operacyjnego. Można określić wyższą wartość, ale zaległości będą ograniczone na podstawie systemu operacyjnego.

Zobacz też

Dotyczy