Java Swing GUI friert ein

Ich schreibe eine Java-Client / Server-GUI-Anwendung mit Sockets und hier ist das Problem:

Ich habe eine Schaltfläche, um nach einem bestimmten Port zu suchen:

button actionPerformed-Methode

private void listenButtonActionPerformed(java.awt.event.ActionEvent evt) {                                             
    int port = Integer.parseInt(portTextfield.getText(), 10);

    try {
        socket.listen(port);
    } catch (IOException ex) {
    }
}

Hier ist die socket.listen Methode

public static void listen() throws IOException {
    ServerSocket ss = new ServerSocket(port);

    while (true)
        new socket(ss.accept());
}

"Socket" -Klasse erweitert "Thread"
Nachdem ss.accept () einen Wert zurückgegeben hat, wird eine neue Socket-Instanz in einem separaten Thread erstellt.

Nach dem Klicken auf die Schaltfläche friert die GUI ein, da sich innerhalb der socket.listen-Methode eine Endlosschleife befindet. Wie kann ich das vermeiden?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage