Pagina 1 di 1

[urgentissimo]Java:come chiudo una connessione??

MessaggioInviato: ven nov 27, 2009 10:51 am
da Dark86
Ciao,ho il seguente problema:
sto sviluppando un'applicazione lato client che deve connettersi a un server(di cui ho solo l'eseguibile e quindi NON modificabile).
Finora il mio sviluppo è stato in laboratorio su una macchina che montava windows XP e il codice che doveva far disconnettere il client era il seguente:
Codice: Seleziona tutto
public void disconnect(){
      dispatcher.stop();
      try {
         socket.shutdownInput();
         socket.shutdownOutput();
         socket.close();
      } catch (IOException e) {
         e.printStackTrace();
      }
   }


Dove dispatcher è un thread che deve rimanere in attesa di eventuali messaggi da parte del server(a questo proposito sono costretto a utilizzare lo stop che è deprecated,se avete suggerimenti in proposito siete liberi di darli).
Ora,su XP questa procedura funziona perfettamente: il mio programma si chiude e il server continua a esistere com'è giusto che sia.
Su Vista invece il server crasha!Entra in un loop infinito in cui viene visualizzata la stringa
MESSAGE=?NULL
Ho provato anche a eseguirlo in modalità compatibile con XP ma niente...a cosa può essere dovuto?