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


Socket.Accept Метод

Определение

Создает новое для Socket только что созданного подключения.

public:
 System::Net::Sockets::Socket ^ Accept();
public System.Net.Sockets.Socket Accept();
member this.Accept : unit -> System.Net.Sockets.Socket
Public Function Accept () As Socket

Возвращаемое значение

A Socket для только что созданного подключения.

Исключения

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

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

Принимающие сокеты не прослушивают подключения. Необходимо вызвать Bind(EndPoint) и Listen(Int32) перед вызовом Accept().

Примеры

В следующем примере кода принимается простое Socket подключение.

protected void AcceptMethod(Socket listeningSocket)
{
    Socket mySocket = listeningSocket.Accept();
}
   Protected Sub AcceptMethod(listeningSocket As Socket)
       

Dim mySocket As Socket = listeningSocket.Accept()
       
   End Sub

Комментарии

Accept синхронно извлекает первый ожидающий запрос подключения из очереди запросов подключения сокета прослушивания, а затем создает и возвращает новое Socket. Эту возможность Socket нельзя использовать для приема дополнительных подключений из очереди подключений. Однако можно вызвать RemoteEndPoint метод возвращаемого Socket объекта, чтобы определить сетевой адрес и номер порта удаленного узла.

В режиме Accept блокировки блокируются до очереди входящей попытки подключения. После принятия подключения исходный Socket объект продолжает очередь входящих запросов на подключение, пока не закроете его.

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

Замечание

Перед вызовом AcceptListen метода необходимо сначала вызвать метод для прослушивания и очереди входящих запросов на подключение.

Замечание

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

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

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