Поделиться через


Socket.Listen Метод

Определение

Перегрузки

Имя Описание
Listen()

Помещает его Socket в состояние прослушивания.

Listen(Int32)

Помещает его Socket в состояние прослушивания.

Listen()

Исходный код:
Socket.cs
Исходный код:
Socket.cs
Исходный код:
Socket.cs
Исходный код:
Socket.cs
Исходный код:
Socket.cs

Помещает его Socket в состояние прослушивания.

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

Комментарии

Максимальная длина очереди ожидающих подключений определяется автоматически.

Применяется к

Listen(Int32)

Исходный код:
Socket.cs
Исходный код:
Socket.cs
Исходный код:
Socket.cs
Исходный код:
Socket.cs
Исходный код:
Socket.cs

Помещает его Socket в состояние прослушивания.

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

Параметры

backlog
Int32

Максимальная длина очереди ожидающих подключений.

Исключения

Произошла ошибка при попытке доступа к сокету.

Он Socket был закрыт.

Примеры

В следующем примере кода используется Socket для прослушивания входящих подключений.

    // 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 на прослушивание входящих попыток подключения. Параметр backlog указывает количество входящих подключений, которые могут быть поставлены в очередь для принятия. Чтобы определить максимальное количество подключений, которые можно указать, получите MaxConnections значение. Listen не блокируется.

При получении SocketExceptionсвойства используйте ErrorCode свойство для получения определенного кода ошибки. Получив этот код, ознакомьтесь с документацией по коду ошибки API сокетов Windows версии 2 , чтобы получить подробное описание ошибки. Используйте Accept или BeginAccept примите подключение из очереди.

Замечание

Перед вызовом BindListenметода необходимо вызвать или Listen вызвать SocketExceptionметод.

Замечание

Этот элемент выводит сведения о трассировке при включении трассировки сети в приложении. Дополнительные сведения см. в разделе "Трассировка сети" в .NET Framework.

Замечание

Параметр невыполненной работы ограничен различными значениями в зависимости от операционной системы. Можно указать более высокое значение, но невыполненная работа будет ограничена в зависимости от операционной системы.

См. также раздел

Применяется к