У меня есть приложение Swing с классом Thread, выполняющим определенную работу. Мне нужно в определенный момент остановить запущенный поток. поэтому я помещаю логическое значение в поток, и когда я устанавливаю его в значение true, поток будет остановлен.
Проблема в том, что потоку требуется некоторое время, чтобы завершить свою внутреннюю работу.
Мне нужно запретить пользователю выполнять какие-либо действия в графическом интерфейсе до завершения потока. Я пробовал что-то вроде setEnabled (false), но приложение зависает, и графический интерфейс не изменяется до тех пор, пока поток не будет остановлен. Я также пытался обновить графический интерфейс в другом потоке, но это тоже не работает.
Есть ли способ обновить графический интерфейс или сделать приложение отключенным, пока задержка остановленного потока завершена.
Спасибо