_beginthreadex retourne une poignée à un fil:Dois-je CloseHandle() sur une poignée de thread?
m_hStreamStatsThread = (HANDLE) _beginthreadex(NULL, 0, StreamStatsThread, this, 0, NULL);
Cette poignée peut être utilisé si vous avez besoin de se référer au fil des appels comme TerminateThread (..) par exemple.
Selon the MSDN page on _beginthreadex, _beginthreadex ne renverra pas toujours un handle valide, par ex. il peut également renvoyer -1L sur erreur, etc.
Lorsqu'un thread s'est terminé normalement, dois-je appeler CloseHandle sur la poignée de thread, ou puis-je simplement définir sa valeur sur NULL/INVALID_HANDLE_VALUE?
Toute poignée Win32 * kernel * (c'est-à-dire tout ce qui est de type 'HANDLE'). Pour quelqu'un qui travaille avec WinAPI est évident, mais j'ai vu des gens essayant de fermer les poignées de fenêtres/ressources ('HWND',' HICON', ...) avec 'CloseHandle'. :) –
Oui, vous avez raison. Le but est de fermer les poignées du noyau. Ceux HWND, HICON, HCURSOR et etc. sont des poignées d'utilisateur. – valdo
P.S. Les poignées de l'utilisateur - je voulais dire - les poignées supportées par user32. – valdo