Я пытаюсь выполнить SwingWorker (SubWorker) из другого SwingWorker (MainWorker), а затем я хочу, чтобы MainWorker дождался завершения SubWorker. Тем временем MainWorker должен обновляться в соответствии с изменениями свойств SubWorker.
public class MainWorker extends SwingWorker<Void,Void>
{
public Void doInBackground()
{
SubWorker sw = new SubWorker();
sw.execute();
try {
network.get(); // wait for completion
} catch (Exception ex) {
}
return null;
}
}
Проблема в том, что метод doInBackground SubWorker не вызывается до тех пор, пока не завершится MainWorker, в то время как MainWorker ожидает завершения SubWorker.
Как я могу позволить SubWorker работать параллельно с действиями MainWorker?