Encore un thread qui ne fonctionne pas
Résolu/Fermé
papachimique
Messages postés
8
Date d'inscription
mercredi 4 juillet 2018
Statut
Membre
Dernière intervention
6 mars 2022
-
Modifié le 5 nov. 2021 à 14:45
papachimique Messages postés 8 Date d'inscription mercredi 4 juillet 2018 Statut Membre Dernière intervention 6 mars 2022 - 5 nov. 2021 à 18:18
papachimique Messages postés 8 Date d'inscription mercredi 4 juillet 2018 Statut Membre Dernière intervention 6 mars 2022 - 5 nov. 2021 à 18:18
A voir également:
- Encore un thread qui ne fonctionne pas
- Thread meta - Guide
- Compte thread - Guide
- Exception in thread "main" java.awt.illegalcomponentstateexception: contentpane cannot be set to null. ✓ - Forum Programmation
- Exception in thread "javafx application thread" java.lang.nullpointerexception ✓ - Forum Java
- System thread exception not handled ✓ - Forum Windows 10
2 réponses
KX
Messages postés
16733
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 janvier 2024
3 015
5 nov. 2021 à 14:56
5 nov. 2021 à 14:56
Bonjour,
Le problème vient du fonctionnement de l'EDT (Event Dispatching Thread) qui gère les évènements de l'interface graphique et ne rends pas la main à l'affichage tant que le listener n'est pas terminé (tu peux t'amuser à déplacer toute ta fenêtre, tu verras qu'elle freeze).
Ce qu'il faut c'est avoir un listener extrêmement court, qui démarre un SwingWorker (en gros, un autre thread géré par l'EDT) qui s'exécutera après la fin du listener.
Le problème vient du fonctionnement de l'EDT (Event Dispatching Thread) qui gère les évènements de l'interface graphique et ne rends pas la main à l'affichage tant que le listener n'est pas terminé (tu peux t'amuser à déplacer toute ta fenêtre, tu verras qu'elle freeze).
Ce qu'il faut c'est avoir un listener extrêmement court, qui démarre un SwingWorker (en gros, un autre thread géré par l'EDT) qui s'exécutera après la fin du listener.
papachimique
Messages postés
8
Date d'inscription
mercredi 4 juillet 2018
Statut
Membre
Dernière intervention
6 mars 2022
5 nov. 2021 à 18:18
5 nov. 2021 à 18:18
Bonjour KX ... et un grand merci.
tout marche parfaitement. J 'avais fais plein de recherches sur internet mais il me manquait le mot clef SwingWorker.
Du coup je viens aussi de comprendre pourquoi, à chaque fois que je faisais un progressBar, il ne fonctionnait jamais .... pas facile la vie pour les débutants!
tout marche parfaitement. J 'avais fais plein de recherches sur internet mais il me manquait le mot clef SwingWorker.
Du coup je viens aussi de comprendre pourquoi, à chaque fois que je faisais un progressBar, il ne fonctionnait jamais .... pas facile la vie pour les débutants!