Socket.Accept Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Cria uma nova Socket para uma conexão recém-criada.
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
Retornos
A Socket para uma conexão recém-criada.
Exceções
Erro ao tentar acessar o soquete.
O Socket foi fechado.
O soquete de aceitação não está escutando conexões. Você deve ligar Bind(EndPoint) e Listen(Int32) antes de ligar Accept().
Exemplos
O exemplo de código a seguir aceita uma conexão simples Socket .
protected void AcceptMethod(Socket listeningSocket)
{
Socket mySocket = listeningSocket.Accept();
}
Protected Sub AcceptMethod(listeningSocket As Socket)
Dim mySocket As Socket = listeningSocket.Accept()
End Sub
Comentários
Accept extrai síncronamente a primeira solicitação de conexão pendente da fila de solicitação de conexão do soquete de escuta e, em seguida, cria e retorna um novo Socket. Você não pode usar isso retornado Socket para aceitar conexões adicionais da fila de conexão. No entanto, você pode chamar o RemoteEndPoint método do retornado Socket para identificar o endereço de rede e o número da porta do host remoto.
No modo de bloqueio, Accept bloqueia até que uma tentativa de conexão de entrada seja enfileirada. Depois que uma conexão é aceita, o original Socket continua a enfileirar solicitações de conexão de entrada até que você a feche.
Se você chamar esse método usando um não bloqueio Sockete nenhuma solicitação de conexão estiver na fila, Accept gerará um SocketException. Se você receber um SocketException, use a SocketException.ErrorCode propriedade para obter o código de erro específico. Depois de obter esse código, consulte a documentação do código de erro da API do Windows Sockets versão 2 para obter uma descrição detalhada do erro.
Observação
Antes de chamar o Accept método, você deve primeiro chamar o Listen método para escutar e enfileirar solicitações de conexão de entrada.
Observação
Esse membro gera informações de rastreamento quando você habilita o rastreamento de rede em seu aplicativo. Para obter mais informações, consulte Rastreamento de Rede no .NET Framework.