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?
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.
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.