Ciao a tutti, sto scrivendo un programma costituito da 2 socket (un client ed un server) che si scambiano messaggi tra di loro. Il programma funziona alla perfezione nel momento in cui entrambi i socket hanno una connessione internet attiva.
I problemi sorgono nel momento in cui, ad esempio, il PC dove gira il socket server si scollega da Internet (ad esempio si spegne il router).
Faccio un piccolo esempio per far comprendere meglio il problema:
1) il socket server chiama la funziona receive() e si blocca su essa in attesa di un messaggio dal client
2) il PC dove gira il server si scollega da Internet
3) il socket client chiama la funzione send() con cui invia il messaggio al client
Il programma si blocca in quanto il messaggio non arriva al socket server (poiché non c'è connessione) ed il socket client non può inviare ulteriori messaggi in quanto non riceve alcun messaggio dal socket server di avvenuta ricezione del messaggio.
Una possibile soluzione che mi era venuta in mente era far sapere al socket client che il PC dove gira il server si è scollegato da Internet, il problema è che non saprei come far sapere questa informazione al client. Esiste un modo?
Ovviamente, se ne avete, sono ben accette altre possibili soluzioni, ci sto smanettando da ore ma non ne vengo a capo ahah
Grazie a tutti per l'aiuto