我正在尝试从另一个 SwingWorker (MainWorker) 执行 SwingWorker (SubWorker),然后我希望 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;
}
}
问题是 SubWorker 的 doInBackground 方法在 MainWorker 完成之前不会被调用,而 MainWorker 正在等待 SubWorker 完成。
如何让 SubWorker 与 MainWorker 的活动并行运行?