Вот простая (проверенная) версия с базовыми (аналогичными) функциями, тогда SwingWoker

тоящее время у меня есть два потока SwingWorker, выполняющих работу в фоновом режиме. Если возникает исключение, метод перестает работать, но поток все еще выполняется.

Как мне сделать, чтобы остановить выполнение и убить потокdoInBackground() если происходит исключение?

this.cancel(true) не разрушайте / закрывайте поток. Как мне этого добиться?

@Override
protected Boolean doInBackground() throws Exception {
        try {
            while (true) {
                //some code here                   
                return true;
            }
        } catch (Exception e) {       
            this.cancel(true); //<-- this not cancel the thread               
            return false;
        }
    }

Я вижу эти темы в отладке Netbeans.

'AWT-EventQueue-0' em execução
'AWT-Windows' em execução
'SwingWorker-pool-1-thread-1' em execução
'SwingWorker-pool-1-thread-2' em execução

//*em execução = in execution

Ответы на вопрос(6)

Ваш ответ на вопрос