Condividi tramite


CAsyncSocket::Listen

Chiamare la funzione membro per ascoltare le richieste di connessione in ingresso.

BOOL Listen( 
   int nConnectionBacklog = 5  
);

Parametri

  • nConnectionBacklog
    La lunghezza massima della coda di connessioni in corso può crearsi. L'intervallo valido è compreso tra 1 e 5.

Valore restituito

Diverso da zero se la funzione ha esito positivo; in caso contrario 0 e un codice di errore specifico possono essere recuperati chiamando GetLastError. Gli errori seguenti si applicano a questa funzione membro:

  • WSANOTINITIALISED Al AfxSocketInit deve verificarsi prima di utilizzare questa API.

  • WSAENETDOWN che l'implementazione di Windows Sockets ha rilevato che il sottosistema di rete non è riuscita.

  • WSAEADDRINUSE è stato effettuato un tentativo di ascolto su un indirizzo utilizzato.

  • WSAEINPROGRESS che blocca l'operazione di Windows Sockets è in corso.

  • IlWSAEINVAL socket non è stato associato a Associa o è già connesso.

  • IlWSAEISCONN socket è già connesso.

  • WSAEMFILE non più descrittori del file è disponibile.

  • WSAENOBUFS alcuno spazio nel buffer è disponibile.

  • WSAENOTSOCK il descrittore non è un socket.

  • IlWSAEOPNOTSUPP socket a cui si fa riferimento non è un tipo che supporta l'operazione Listen.

Note

Per accettare connessioni socket, il primo verrà creato con Crea, un backlog delle connessioni in ingresso specificato con Listenquindi le connessioni vengono accettate con Accept. Listen si applica solo ai socket che supportano le connessioni, ovvero, tali di tipo SOCK_STREAM. Questo socket viene inserito in modalità passiva "" dove le connessioni in ingresso sono riconosciute e accodate in attesa dell'accettazione dal processo.

Questa funzione viene in genere utilizzata dal server (o da qualsiasi applicazione che desidera accettare connessioni) che possono avere più di uno richiesta di connessione alla volta: se una richiesta di connessione arriva alla coda completa, il client verrà generato un errore con un'indicazione WSAECONNREFUSED.

Listen tenta di continuare a funzionare razionale in assenza di porte disponibili (descrittori). Accetta le connessioni fino a svuotare la coda. Se le porte diventano disponibili, una chiamata successiva a Listen o a Accept riempirà la coda a corrente o la maggior parte "backlog recente," se possibile e ripresa in ascolto delle connessioni in ingresso.

Requisiti

Header: afxsock.h

Vedere anche

Riferimenti

Classe CAsyncSocket

Grafico delle gerarchie

CAsyncSocket::Accept

CAsyncSocket::Connect

CAsyncSocket::Create