Originariamente inviato da anx721
e perche gli fai chiudere la connessione al primo thread?
Il primo thread esegue un ciclo while(true) di questo tipo:
codice:
while (true)
{
try
{
//Non setto nessun timeout perche' il mio compito e' soltanto quello di attendere connessioni in entrata
incoming = ss.accept();//Chiamata bloccante
}
catch(IOException e)
{
System.out.println("Taxi Reservation Handler " + tm.getTaxiName() + "> errore durante la ricezione di prenotazioni sul server socket.");
continue;//Passo alla prenotazione successiva
}
....
....
//Qui utilizzo gli stream di I/O ottenuti dal socket
//Creo un oggetto Received formato dalla stringa ricevuta
//e dallo stream di output (Un PrintWriter)
}
Il socket non lo chiudo esplicitamente e nemmeno il PrinWriter. Pero' quando torno a fare la accept() per attendere lo stabilirsi di una nuova connessione temo che il socket (E di conseguenza gli stream di i/o) venga chiuso "automaticamente".