Semplicemente, dovrai creare N thread, ciascuno contenente la sua ServerSocket in ascolto su una porta.
codice:
public class ServerThread extends Thread {
private int port;
private ServerSocket server;
public ServerThread(int port) { this.port = port; }
@Override
public void run() {
try {
server = new ServerSocket( port );
Socket s = server.accept();
...
} catch (Exception e) { ... }
}
}
Dovrai creare N oggetti di questa classe ed avviarli:
codice:
public static void main(String[] args) {
// Un server in ascolto sulla porta 3000
ServerThread s1 = new ServerThread( 3000 );
// Un server in ascolto sulla porta 3001
ServerThread s2 = new ServerThread( 3001 );
// Un server in ascolto sulla porta 3002
ServerThread s3 = new ServerThread( 3002 );
// Avvio i tre server
s1.start();
s2.start();
s3.start();
}
Ciao.