Java - SwingWorker - Podemos chamar um SwingWorker de outro SwingWorker em vez de EDT
eu tenho umSwingWorker
do seguinte modo:
public class MainWorker extends SwingWorker(Void, MyObject) {
:
:
}
Eu invoquei o acimaSwing Worker
da EDT:
MainWorker mainWorker = new MainWorker();
mainWorker.execute();
Agora omainWorker
cria 10 instâncias de umMyTask
classe para que cada instância seja executada em seu próprio encadeamento para concluir o trabalho mais rapidamente.
Mas o problema é que eu quero atualizar a GUI de tempos em tempos enquanto as tarefas estão em execução. Eu sei que se a tarefa foi executada pelomainWorker
em si, eu poderia ter usadopublish()
eprocess()
métodos para atualizar a GUI.
Mas, como as tarefas são executadas por threads diferentes dosSwingworker
thread, como posso atualizar a GUI a partir de resultados intermediários gerados por threads executando tarefas.