Создаю чат, есть возможность подключаться и отключатся от чата, при подключении пользователь добавляется в список пользователей онлайн, нужно чтоб при отключении пользователь удалялся из списка. Когда один из пользователей отключается окно чата закрывается но он остается в списке у другого пользователя. Каждый новый пользователь запускает отдельный поток. Как его удалить?
Метод отключения от сети, вызывается при нажатии на кнопку
public void disconnect() throws IOException
{
PWOUT.println(ClientGUI.UserName + " has disconnected");
PWOUT.flush();
SOCKET.close();
DefaultListModel dlm = new DefaultListModel();
dlm.clear(); //удаляем всех
ClientGUI.listOnline.setModel(dlm); //обновляем
JOptionPane.showMessageDialog(null,
"You disconnected!",
"User disconnect", JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
}