Thread, Interface et Controler
Bonsoir a tous,
voila en fait je suis en train de plancher sur un problème de conception auquel je n'arrive pas à trouver de solution. Voila en fait je développe une application qui a une interface principale et j'aimerais que cette interface lance une deuxieme interface mais en parallèle pour que lorsqu'une des deux interfaces soit bloqués cela ne bloque pas l'autre.
Donc en fait voila comment je procéde: en fait mon interface lance un thread et dans ce thread je lance mon interface, voila le code:
Code:
1 2 3 4 5
| public class JControler extends Thread
{
public void run()
{ this.productDlg = new JDlgProducteur(); /* reste de la classe control les actions sur les differents composant de la fenetre*/}
} |
le probleme c'est que ca me lance l'interface mais le thread se termine et donc en fait je me retrouve avec un thread unique. donc si un des deux dialog bloques, alors ca bloque toute mon application.
et en fait je ne vois pas trop comment résoudre ce problème...
donc voila si quelqu'un pouvait me conseiller sur la méthode à suivre pour lancer deux interfaces dans deux interfaces thread distinct...
Ou peut etre que la solution serait de déclarer mon interface comme ceci:
Code:
1 2
| class Dlg extends JFrame implements Runable
{ [...] public void run() { ... } [...] } |
et que la mon interface va se lancer dans un thread appart. mais ma gestion des evenement de la fenetre se trouvant dans la classe qui lance le thread, va continuer de faire partie du thread principale.
donc en fait je ne sais pas trop comment faire, pourriez-vous m'éclairer svp?
Merci par avance
pb de synchonisation entre threads
il faut utiliser les fonctions de synchronisation sur les threads , si je ne me trompe il doit y avoir une fonction join() qui permet qu'un thread attende la fin d'un autre avant de s'achever lui aussi