J'essaie d'exécuter un SwingWorker (SubWorker) à partir d'un autre SwingWorker (MainWorker), puis je souhaite que MainWorker attende que le SubWorker se termine. En attendant, MainWorker devrait se mettre à jour en fonction des changements de propriétés de SubWorker.Exécution de SwingWorker à partir de SwingWorker - attend jusqu'à ce que le premier s'arrête
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;
}
}
Le problème est que la méthode doInBackground du SubWorker n'est pas appelé jusqu'à ce que la MainWorker terminée, tandis que le MainWorker attend le SubWorker pour terminer. Comment puis-je laisser le SubWorker fonctionner parallèlement aux activités MainWorker?
Merci, en utilisant un Executor résout le problème. – RemiX