Compartilhar via


CAsyncSocket::Listen

Chamar essa função de membro para escutar solicitações de conexão de entrada.

BOOL Listen( 
   int nConnectionBacklog = 5  
);

Parâmetros

  • nConnectionBacklog
    O comprimento máximo que a fila de conexões pendentes pode crescer. o intervalo válido é 1 a 5.

Valor de retorno

Diferente de zero se a função é com êxito; se não 0, e um código de erro específico podem ser recuperados chamando GetLastError. Os seguintes erros se aplicam a essa função de membro:

  • WSANOTINITIALISED A AfxSocketInit com êxito deve ocorrer antes de usar este API.

  • WSAENETDOWN a implementação da do windows detectou que o subsistema de rede falhou.

  • WSAEADDRINUSE uma tentativa foi feita para escutar em um endereço em uso.

  • A operação de soquetes do windows de bloqueio deWSAEINPROGRESS A está em andamento.

  • WSAEINVAL o soquete não foi associado com Ligar ou já está conectado.

  • WSAEISCONN o soquete já está conectado.

  • WSAEMFILE não mais descritores de arquivo está disponível.

  • WSAENOBUFS nenhum espaço de buffer está disponível.

  • WSAENOTSOCK o descritor não for um soquete.

  • WSAEOPNOTSUPP o soquete referenciado não é de um tipo que ofereça suporte a operação de Listen .

Comentários

Para aceitar conexões, o soquete é projetado principalmente com Criar, uma reserva para conexões de entrada é especificado com Listen, e as conexões são aceitos na Aceitar. Listen se aplica somente à que suportam as conexões, isto é, essas de tipo SOCK_STREAM. Este soquete é colocado no modo passivo “” onde as conexões de entrada são reconhecidas na fila e durante a aceitação pelo processo.

Essa função é normalmente usada para servidores (ou por qualquer aplicativo que desejar aceitar conexões) que poderia ter mais de uma solicitação de conexão de cada vez: se uma solicitação de conexão chega com a fila completa, o cliente receberá um erro com uma indicação de WSAECONNREFUSED.

Listen tenta continuar a funcionar racional quando não há nenhuma porta disponível (descritores.) Aceitará conexões até que a fila é esvaziada. Se as portas se tornam disponíveis, uma chamada posterior a Listen ou a Aceitar reencherá a fila a atual ou à maioria de “reserva recente,” se possível, e o resumo que escuta as conexões de entrada.

Requisitos

Cabeçalho: afxsock.h

Consulte também

Referência

Classe CAsyncSocket

Gráfico da hierarquia

CAsyncSocket::Accept

CAsyncSocket::Connect

CAsyncSocket::Create