bubbathemaster
Messages postés339Date d'inscriptiondimanche 26 janvier 2003StatutMembreDernière intervention25 mars 2009
-
23 déc. 2008 à 17:54
cs_Robert33
Messages postés834Date d'inscriptionsamedi 15 novembre 2008StatutMembreDernière intervention14 janvier 2017
-
26 déc. 2008 à 19:22
Bonjour,
J'ai un thread qui créé des fenêtres. Ces fenêtes sont ajoutées dans une liste de forms pour que je garde trace de leur créations. Le truc c'est que quand ce thread meurt, les fenêtres sont fermées automatiquement et moi j'aimerai bien pouvoir réutiliser ces fenêtres dans un autre thread (via la liste de fenêtres construite à leur création).
bubbathemaster
Messages postés339Date d'inscriptiondimanche 26 janvier 2003StatutMembreDernière intervention25 mars 20094 23 déc. 2008 à 18:24
Erf le titre mais impossible d'editer...
Autre question: est-il possible de créer ces fenêtres en les faisant passer pour ayant été créées dans un autre thread (ce qui règlerait le probleme et me simplifierait la tache :p)
bubbathemaster
Messages postés339Date d'inscriptiondimanche 26 janvier 2003StatutMembreDernière intervention25 mars 20094 23 déc. 2008 à 23:03
Bein disons que ca m'arrange pas, parceque le thread de l'appli qui gère l'interface est vraiment complètement séparable de l'autre thread qui créé les fenêtres.
Mais j'ai trouvé une parade:
Le thread 1 empile des infos
Le thread 2 check la liste, si ya des infos il créé les fenêtres que le thread 1 créaient avant directement et dépile.
(le tout avec un lock qui va bien sur la liste partagée entres les 2 threads). Je perds un peu en réactivité (le thread 2 pool la liste ttes les 100ms, alors qu'avant c'était direct), mais ca me permet de me sortir de là.
cs_Robert33
Messages postés834Date d'inscriptionsamedi 15 novembre 2008StatutMembreDernière intervention14 janvier 201733 26 déc. 2008 à 19:22
Bonsoir
Utilise un évenement plutot qu'un pooling.
le thread qui crée les "forms" generer l'evenement, le thread qui veut les utiliser s'abonne à l'évenement.
mais je suis d'accord avec bidou, il vaudrait mieux que les "forms" soient créées par le thread principal.
là encore utilise un delegate, pour que ton thread deamande la création des forms au thread principal