Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Come si sblocca accept()?
Forum - C/C++ - Come si sblocca accept()?

Avatar
robrock80 (Normal User)
Pro


Messaggi: 143
Iscritto: 11/12/2006

Segnala al moderatore
Postato alle 11:33
Sabato, 03/04/2010
Salve a tutti. Ho cercato in lungo e in largo, ma niente, ho provato anche a mettere la accept dentro un thread che poi termino con TerminateThread o ExitThread ma, nel primo caso, il thread non viene terminato, nel secondo invece viene terminato ma lo strato winsock resta bloccato. Esiste un modo, senza usare le chiamate asincrone, per sbloccare la funzione accept(SOCKET, NULL, NULL) di winsock?


P.S.: ho provato anche con closeSocket, shutdown e WSACleanup, ma restano tutte bloccate

Ultima modifica effettuata da robrock80 il 03/04/2010 alle 14:39
PM Quote
Avatar
robrock80 (Normal User)
Pro


Messaggi: 143
Iscritto: 11/12/2006

Segnala al moderatore
Postato alle 15:13
Sabato, 03/04/2010
Yuuuhuuuu.... Ci sono riuscito!!! Ho fatto a modo mio e anche se sarà poco ortodosso, almeno funziona: praticamente mentre nel thread della accept quest'ultima è bloccata, nel thread principale prima imposto i flag di fine ascolto a false e poi creo un socket client che sblocca la accept. Se qualcuno conosce un modo piu pulito mi faccia sapere

Ultima modifica effettuata da robrock80 il 03/04/2010 alle 22:10
PM Quote