Programm bleibt nach Erstellung von Thread "hängen"

SymphonyX

Grünschnabel
Hi, ich hab folgendes Problem.
Hab ne Klasse Server, die von Thread erbt, und im Konstruktor mit ner while(true) Schleife die ganze Zeit mitlaufen soll (um Daten von Sockets einzulesen).
Jetzt erstelle ich meine Klasse als Thread, und mein Programm bleibt stehen, als ob es nun in der while (true) Schleife drinhängt.

So erstell ich meinen Thread:
public static void createServer(){
try {
server = new Server();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
server.start();
}

Und das tut mein Thread: (eigtl. unwichtig)
public Server() throws IOException {
while (true) {
server = new ServerSocket(6112);
server.setReuseAddress(true);
client = server.accept();
input = new DataInputStream(new BufferedInputStream(
client.getInputStream()));
output = new DataOutputStream(new BufferedOutputStream(
client.getOutputStream()));
// schicke Nachricht an alle verbundenen Clients zurück
output.writeUTF(input.readUTF());
output.flush();
server.close();
input.close();
output.close();
}
}

Mir ist nicht so ganz klar, wieso er da in die Endlosschleife reinspringt, Ich dachte genau das ist ja der Sinn von Threads, dass sie einfach im Hintergrund parallel mitlaufen.
Gruß
Der Sym
 
Ok, cann geclosed werden... Hab den Fehler gefunden.
Wenn ich ner Klasse Thread vererbe muss ich ne Methode "run" überschreiben.
 
Das alleine reicht nicht, du musst den Thread auch mittels "start()" starten.

Und "closen" kannst du selbst, in dem du oben auf das Häkchen klickst und damit das Thema als erledigt markierst.
 
Zurück