Devo usar SwingUtilities.invokeLater () dentro de SwingWorker.doInBackground ()?
A maneira comum de interagir com o EDT do swing worker é usar o método get (). Mas eu tenho uma tarefa longa e código como este:
public Void doInBackground() {
for(Object o : objects) {
doSomething();
MyGlobalGUIConsole.addMessage("Done for " + o);
}
}
Na maioria dos tutotiais é recomendado usar valores de retorno para obter algo de volta do SwingWorker para o EDT, mas posso apenas:
public Void doInBackground() {
for(Object o : objects) {
doSomething();
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
MyGlobalGUIConsole.addMessage("Done for " + o);
}
});
}
}