Bonjour,
Je developpe un programme style traitement de texte.
J'ai des classes commande qui etendent SwingWorker pour gérer les événement de l'interface graphique :
- OuvrirFichierCommande extends SwingWorker
- EnregistrerFichierCommande extends SwingWorker
Dans doInBackground, je fais le traitement, par exemple ouvrir le fichier et le meme en memoire. Et dans done, le raffraissement de l'interface graphique.
Jusque là je pense que je fais celà correctement et que j'ai bien compris le principe de SwingWorker.
J'aimerai pouvoir lancé EnregistrerFichierCommande depuis le doInBackground de OuvrirFichierCommande si le fichier en cours d'édition n'a pas été enregistré.
Vu que je débute en thread et swingWorker je me pose une question :
Le fait de lancer un thread SwingWorker depuis un autre dans doInBackground ne poserat-il pas problème ?
EnregistrerFichierCommande vat-il attendre que OuvrirFichierCommande aille finit (donc la fin de done) ou continuer en parrallèle ?
Je ne peut pas utiliser non plus invokeAndWait car celà va lancé EnregistrerFichierCommande dans l'EDT et son doInBackground aussi...
Merci de m'éclairer.
Partager