foulla002
Messages postés47Date d'inscriptionmardi 4 juillet 2006StatutMembreDernière intervention 5 septembre 2006
-
24 août 2006 à 08:51
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023
-
24 août 2006 à 23:59
salut
je travaille avec la prgrammation multithreadee et j'ai rencontre un probleme d'affichage graphique
en fait,je ne recupere pas les resultats depuis les threads dans le graphique pas à pas dans l'ordre d'execution
mais je dois attendre jusqu'a l'execution de tout le programme pour recuperer le resultat d'un coup de tous les threads
pourtant ça se fait sur la sortie standard pas à pas(j'ai fait un petit affichage pour suivre)
quelqu'un pourras t'il m'aider,j'ai besoin de recuperer le resultat pas a pas
merci
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 24 août 2006 à 23:59
Salut,
pour les gens qui passent par la :
le problème venait d'un traitement fait dans la methode d'actionPerformed suite a un clic sur un bouton ce qui fesait que pendant ce traitement aucun repaint de l'ihm n'etait possible la solution à utiliser et de détacher le traitement dans un thread (ou timer c'est au choix) afin de ne pas pénalisé l'affichage. voilou
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."
foulla002
Messages postés47Date d'inscriptionmardi 4 juillet 2006StatutMembreDernière intervention 5 septembre 2006 24 août 2006 à 09:39
salut
desole
j'ai voulu dire que je veux recuperer le resultat dans un jtable depuis les threads au fur et a mesure de leur
execution;parceque j'aurais le resultat d'un coup affiche à la fin de l'execution de tout le programme
comment faire pour recuperer le resultat petit a petit
merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 24 août 2006 à 10:06
Salut,
ba dans tes thread tu fais simplement un add de la ligne (ou valeur) dans ton jtable, bon oki a dire c'est super simple (bien que pour la pratique il n'y a rien de complex) mais attention il te faudra surement passer la methode d'ajout d'elements en synchronized pour eviter les problèmes d'acces concurent
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."
foulla002
Messages postés47Date d'inscriptionmardi 4 juillet 2006StatutMembreDernière intervention 5 septembre 2006 24 août 2006 à 10:18
salut
voici tris lignes du codes de ma methode run()
Object [] myRow1 = { m_toScan, " " , " " , " " } ;
System.out.println("coucou" ) ;//juste pour tester si le thread est execute ou non
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 24 août 2006 à 10:30
Salut,
ajoute le dans ton JTable ça reste le plus pratique et le plus sécurisant pour la simple raison que dans 6 mois tu ne te souviendra pas forcement que tu avais mit des blocks synchronized dans ton code pour eviter les acces concurent donc de le fixer une bonne fois pour toute ça aide :P
public synchronized void addRow(Object[] row){
//...........
}
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."
foulla002
Messages postés47Date d'inscriptionmardi 4 juillet 2006StatutMembreDernière intervention 5 septembre 2006 24 août 2006 à 10:59
salut
desolé j'ai essaye ce qu'on m'a indique mais ca donne la meme chose
le Systeme.out.println("coucou"); s'affiche au fur et a mesure de l'execution du thread mais le jtable ne se remplit qu'a la fin