Ciao a tutti, provo a spiegare il mio dubbio/problema.
Il mio progetto è compsoto da una base che riceve gli ordini da stampare e da diversi palmari che prendono l'ordinazione dal cliente.
Il server riceve uan stringa la elabora e mi stampa lo scontrino.
Tutto funziona.
Io ho realizzato il server nel seguente modo.
Domanda: se più palmari inviano contemporaneamente un ordinazione al server che succede? Come gestisco questa cosa?codice:public class Server extends Thread{ String msg=null; /*Inizio procedura principale del server*/ public void run(){ /*Dichiaro la socket del server*/ ServerSocket sk = null; /*Dichiaro la socket del client*/ Socket client = null; /*Cattura degli errori nel caso in cui verificasse un eccezione IOException nello stabilimento di una connessione tra server e client*/ try{ /*Creo un nuovo socket del server in cui indico*/ sk = new ServerSocket(8081); /*ciclo per il limite di connessioni*/ while(true){ /*accetto la connessione del client*/ client = sk.accept(); /*evoco una subroutine che svolga le funzioni dedicate al client*/ System.out.println("accettato"); BufferedReader br=new BufferedReader(new InputStreamReader(client.getInputStream())); msg=br.readLine(); SwingUtilities.invokeLater(new Runnable() { public void run() { ServiziClient(msg); } }); Utility.avviaStampa(); br.close(); client.close(); } } /*Gestione Errori*/ catch(IOException e){ System.out.println("Errore di I/O."); } } /*Questa procedura si occupa di una semplice lettura attraverso la socket, del messaggio proveniente dal client in formato stringa.*/ private void ServiziClient(String mess){ INIZIALIZZO I COMPONENTI DEL PANEL DA STAMPARE } }
grazie

Rispondi quotando