[C#]Les threads

Fermé
Lust Messages postés 243 Date d'inscription mercredi 28 septembre 2005 Statut Membre Dernière intervention 12 septembre 2007 - 21 août 2006 à 16:57
Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 - 22 août 2006 à 08:49
Salut,

J'ai un ptit pb avec les threads.... voila, en faite j'ai une boucle qui peut prendre plus moins de temps à éxécuter, et donc, j'aimrais avoir un bouton pour la stopper... j'ai donc vu que la solution serait de mettre cette boucle dans un thread et stopper le thread... mais ca marche tjr pas, l'appli ne réagit qu'a la fin de l'exécution du thread.

myThread = new Thread(new ThreadStart(LanceMapSite));
myThread.Start();
myThread.Join();

le truc, c'est que j'ai mis le "myThread.Join();" parce que j'attends qu'il finisse pour exécuter le reste.... ca viens de ca?

Sinon, comment fait on pour interrompre une boucle ou autre.... afin d'éviter que l'utilisateur impatient ne fasse ctrl-alt-suppr....

merci pour votre aide
A voir également:

1 réponse

Char Snipeur Messages postés 9696 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 297
22 août 2006 à 08:49
Salut.
J'y connai rien en C#, mais en C/C++.
en regardant dans la doc, j'ai trouvé qu'il existe un "thread_kill"
il doit y avoir la même chose en C#.
En fait celui ci semble reposer sur l'émission réception de signal.
Il te reste donc à émettre un signal depuis la partie principale de ton programme, et à le récupérer dans le thread.
en C++, le thread_join() attend que le thread se termine normalement, c'est alors normal que ton programme ne fasse pas ce que tu attendes de lui.
1