Arreter un thread [Résolu]

LaTatadu91 968 Messages postés jeudi 20 mai 2004Date d'inscription 26 avril 2013 Dernière intervention - 2 févr. 2010 à 18:27 - Dernière réponse : racpp 1910 Messages postés vendredi 18 juin 2004Date d'inscription 14 novembre 2014 Dernière intervention
- 2 févr. 2010 à 22:28
Bonjour,

Je me demande quelle est la meilleure façon de stopper un thread:
en utilisant terminatethread ou en faisant un waitforsingleobject d'un event?
ou autre?
et aussi pourquoi?


 
Afficher la suite 

Votre réponse

2 réponses

BruNews 21054 Messages postés jeudi 23 janvier 2003Date d'inscription 7 novembre 2014 Dernière intervention - 2 févr. 2010 à 20:49
+3
Utile
terminatethread JAMAIS, seulement admissible pour stoper tout un processus à la sauvage.
Un event ou un flag de stop à lire régulierement ou tout autre moyen de synchro qui fera sortir proprement le thread sera OK.

ciao...
BruNews, MVP VC++
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de BruNews
racpp 1910 Messages postés vendredi 18 juin 2004Date d'inscription 14 novembre 2014 Dernière intervention - 2 févr. 2010 à 22:28
+3
Utile
Salut,
Quand un thread atteint un return il se termine de lui même. WaitForSingleObject() permet d'attendre qu'un thread soit terminé. En plus du flag ou de l'event, on peut envoyer un message personnalisé au thread avec PostThreadMessage(). Ce message sera récupéré avec une boucle de messages propre au thread. Ensuite, il sera traité convenablement dans la fonction du thread pour le fermer proprement.
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de racpp

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.