Thread ?
Résolu/Fermé
A voir également:
- Thread ?
- 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
kij_82
Messages postés
4088
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
23 juil. 2013 à 17:35
23 juil. 2013 à 17:35
Bonjour,
Quel est l'objet nommé "panneau" dans ton code ?
Je pense que ton principal problème est une problème d'organisation si je puis dire.
Généralement il n'est pas bon de mélanger du code UI (interface utilisateur) et du traitement pur. Ta remarque sur le "thread" entre là dedans, car effectivement tu pourrais commencer par extraire toute la partie purement traintenant pour la mettre dans une classe à part, puis l'exécuter dans un thread (attention à bien gérer un pool à coté!) de manière à ce que le traitement n'impacte pas l'interface utilisateur. En gros c'est le même principe que le développement sur Mobile, afin de ne pas faire lagger l'interface et la rendre la plus fluide possible, aucun traitement lourd = plus de 4 secondes n'est admis.
Pour revenir à ton problème de base, car externaliser ton traitement dans un thread ne résoudrera pas le soucis actuel, je pense que c'est parce que tu ajoutes des élements dans ton "panneau" au lieu de mettre à jour les éléments déjà existant (remplacement des titres, etc.). Surtout que tu les ajoutes et bound toujours au même endroit, je suppose que le pb de superposition vient donc de là.
Corrige tout ça et redis moi si tu as toujours des soucis.
Résumé:
- effectuer tout traitement hors de la couche UI (lancé dans un autre thread via un pool par exemple donc)
- mettre à jour les composants UI existant plutôt que d'en ajouter. Ou si tu veux en ajouter, penser à supprimer les anciens !
Quel est l'objet nommé "panneau" dans ton code ?
Je pense que ton principal problème est une problème d'organisation si je puis dire.
Généralement il n'est pas bon de mélanger du code UI (interface utilisateur) et du traitement pur. Ta remarque sur le "thread" entre là dedans, car effectivement tu pourrais commencer par extraire toute la partie purement traintenant pour la mettre dans une classe à part, puis l'exécuter dans un thread (attention à bien gérer un pool à coté!) de manière à ce que le traitement n'impacte pas l'interface utilisateur. En gros c'est le même principe que le développement sur Mobile, afin de ne pas faire lagger l'interface et la rendre la plus fluide possible, aucun traitement lourd = plus de 4 secondes n'est admis.
Pour revenir à ton problème de base, car externaliser ton traitement dans un thread ne résoudrera pas le soucis actuel, je pense que c'est parce que tu ajoutes des élements dans ton "panneau" au lieu de mettre à jour les éléments déjà existant (remplacement des titres, etc.). Surtout que tu les ajoutes et bound toujours au même endroit, je suppose que le pb de superposition vient donc de là.
Corrige tout ça et redis moi si tu as toujours des soucis.
Résumé:
- effectuer tout traitement hors de la couche UI (lancé dans un autre thread via un pool par exemple donc)
- mettre à jour les composants UI existant plutôt que d'en ajouter. Ou si tu veux en ajouter, penser à supprimer les anciens !