Quelle est la meilleure façon de démarrer un fil _beginthread
, _beginthreadx
ou CreateThread
?
J'essaie de déterminer quels sont les avantages / inconvénients de _beginthread
, _beginthreadex
et CreateThread
. Toutes ces fonctions renvoient un descripteur de thread à un thread nouvellement créé, je sais déjà que CreateThread fournit un peu d'informations supplémentaires lorsqu'une erreur se produit (cela peut être vérifié en appelant GetLastError
) ... mais que dois-je prendre en compte lorsque je ' m en utilisant ces fonctions?
Je travaille avec une application Windows, donc la compatibilité multiplateforme est déjà hors de question.
J'ai parcouru la documentation msdn et je ne peux tout simplement pas comprendre, par exemple, pourquoi quelqu'un déciderait d'utiliser _beginthread au lieu de CreateThread ou vice versa.
À votre santé!
Mise à jour: OK, merci pour toutes les informations, j'ai également lu dans quelques endroits que je ne peux pas appeler WaitForSingleObject()
si j'ai utilisé _beginthread()
, mais si j'appelle _endthread()
dans le fil de discussion, cela ne devrait-il pas fonctionner? Quel est le problème là-bas?