Stefano Albrecht: Java ist toll...

Beitrag lesen

Morgen Eddi,

solange ich noch keine Implementation eines Multithreaded Servers (ist mir Wurst, ob HTTP, SMTP, POP, IMAP oder sonstwas) gesehen habe, würde ich das strikt verneinen.

Java ist eine Sprache, in der Server- und Thread-Angelegenheiten sehr elegant gelöst sind.
Ich schreibe Dir hier mal einen multithreaded Server rein:

...

try{
  ServerSocket serverSocket = new ServerSocket(12345);
}catch(Exception ex){
  System.exit(1);
}

while(true){
  try{
    Socket socket = serverSocket.accept();
    ClientThread clientThread = new ClientThread(socket);
    clientThread.start();
  }catch(Exception ex){
    /* ... */
  }
}

...

Dies ist eine Minimal-Implementation des Servers. Der Server läuft auf TCP-Port 12345.
ClientThread ist eine von Thread abgeleitete Klasse, die den neuen Socket durch "serverSocket.accept();"
übernimmt und damit arbeitet, nachdem der Thread mit "clientThread.start();" gestartet wurde, wobei dieses
Statement auch noch in den Konstruktor von ClientThread gesetzt werden könnte.

Weiterhin:
1.
2.
3.
...[infinite]

Freundliche Grüße
Stefano Albrecht