Java - thread.sleep () в SwingWorker - PullRequest
       11

Java - thread.sleep () в SwingWorker

0 голосов
/ 09 марта 2012

Мне просто интересно, правильный ли следующий код. У меня есть SwingWorker, который что-то делает, спит, делает что-то еще и обновляет графический интерфейс. Можно ли использовать Thread.sleep внутри SwingWorker?

class MySwingy extends SwingWorker<Void, Void> {

    @Override
    public Void doInBackground() {

        //Do Something

        try {
            Thread.sleep(200);
        } catch (Exception ex) {
        }

        //Do Something

    }

    @Override
    public void done() {
        //Update GUI
    }
}

1 Ответ

2 голосов
/ 09 марта 2012

Если вам действительно нужно, нет технической причины, по которой вы не можете этого сделать. Поток, который будет блокировать, является фоновым потоком, и ваш пользовательский интерфейс не будет блокировать.

Но могу ли я спросить, зачем вам спать в фоновом потоке? Может быть, ваш дизайн может быть улучшен, чтобы убрать эту потребность?

...