PRO-BO
06-07-2010, 19:47
Salve ragazzi,
mi serve un aiuto, sto realizzando una piccola applicazione C/S ed ho un grosso problema:
ho un'interfaccia per i log del client e del server; il server una volta attivato resta in attesa "infinita" di richieste e quindi ho un bel ciclo "while(true)" all'interno del quale vengono fatte le accept di nuove connessioni.
Questo però mi crea problemi con la textArea dove riporto le operazioni eseguite dal server.
L'unica soluzione che ho trovato e che sembra andare è questa:
una volta creata la socket, il server è pronto per restare in "ascolto" di nuove connessioni, quindi io:
creo un thread
new Thread(this).start();
quindi la start esegue la run corrispondente
public void run(){
acceptConnection();
}
e ovviamente all'interno della funzione acceptConnection c'è il famoso ciclo infinito:
public void acceptConnection() {
while(true) {
// Accetto le connessioni da perte dei clients
try{
clientSocket = (SSLSocket)serverSocket.accept();
}catch....
//segue la gestione dei dati in arrivo dalla socket
Le cose sembrano funzionare ma non sono sicuro della soluzione adottata.....quindi vi chiedo un consiglio, un parere.........AIUTO :help: :asd:
;)
Grazie
mi serve un aiuto, sto realizzando una piccola applicazione C/S ed ho un grosso problema:
ho un'interfaccia per i log del client e del server; il server una volta attivato resta in attesa "infinita" di richieste e quindi ho un bel ciclo "while(true)" all'interno del quale vengono fatte le accept di nuove connessioni.
Questo però mi crea problemi con la textArea dove riporto le operazioni eseguite dal server.
L'unica soluzione che ho trovato e che sembra andare è questa:
una volta creata la socket, il server è pronto per restare in "ascolto" di nuove connessioni, quindi io:
creo un thread
new Thread(this).start();
quindi la start esegue la run corrispondente
public void run(){
acceptConnection();
}
e ovviamente all'interno della funzione acceptConnection c'è il famoso ciclo infinito:
public void acceptConnection() {
while(true) {
// Accetto le connessioni da perte dei clients
try{
clientSocket = (SSLSocket)serverSocket.accept();
}catch....
//segue la gestione dei dati in arrivo dalla socket
Le cose sembrano funzionare ma non sono sicuro della soluzione adottata.....quindi vi chiedo un consiglio, un parere.........AIUTO :help: :asd:
;)
Grazie