Arreter un thread [Résolu]

Messages postés
968
Date d'inscription
jeudi 20 mai 2004
Statut
Membre
Dernière intervention
26 avril 2013
- - Dernière réponse : racpp
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
- 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 

2 réponses

Meilleure réponse
Messages postés
21054
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
7 novembre 2014
13
3
Merci
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++

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 188 internautes nous ont dit merci ce mois-ci

Commenter la réponse de BruNews
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
7
3
Merci
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.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 188 internautes nous ont dit merci ce mois-ci

Commenter la réponse de racpp