Czy powinienem używać SwingUtilities.invokeLater () wewnątrz SwingWorker.doInBackground ()?

Najczęstszym sposobem interakcji z EDT od pracownika swingującego jest użycie metody get (). Ale mam długie zadanie i kod podobny do tego:

public Void doInBackground() {
    for(Object o : objects) {
         doSomething();
         MyGlobalGUIConsole.addMessage("Done for " + o);
    }
}

W większości przypadków zaleca się używanie wartości zwracanych, aby coś odzyskać od SwingWorker do EDT, ale czy mogę po prostu:

public Void doInBackground() {
    for(Object o : objects) {
        doSomething();
        SwingUtilities.invokeLater(new Runnable() {        
            @Override                                      
            public void run() {                            
                MyGlobalGUIConsole.addMessage("Done for " + o);
            }                                              
        });                                                
    }
}

questionAnswers(1)

yourAnswerToTheQuestion