Share via


_endthread, _endthreadex

Termine un thread ; _endthread termine un thread créé par _beginthread et _endthreadex termine un thread créé par _beginthreadex.

Important

Cette API ne peut pas être utilisée dans les applications qui s'exécutent dans le Windows Runtime.Pour plus d'informations, voir Fonctions CRT non prises en charge avec /ZW.

void _endthread( void ); void _endthreadex(     unsigned retval  );

Paramètres

  • retval
    Code de sortie de thread.

Notes

Vous pouvez appeler _endthread ou _endthreadex explicitement pour terminer un thread ; cependant, _endthread ou _endthreadex est appelé automatiquement quand le thread retourne de la routine passée en tant que paramètre à _beginthread ou _beginthreadex. Terminer un thread avec un appel à endthread ou _endthreadex permet de garantir une récupération correcte des ressources allouées pour le thread.

Notes

Pour un fichier exécutable lié à Libcmt.lib, n'appelez pas l'API Win32 ExitThread ; cela empêche le système runtime de récupérer les ressources allouées._endthread et _endthreadex récupèrent les ressources de thread allouées, puis appellent ExitThread.

_endthread ferme automatiquement le handle du thread. (Ce comportement diffère de l'API Win32 ExitThread.) Ainsi, quand vous utilisez _beginthread et _endthread, ne fermez pas explicitement le handle du thread en appelant l'API Win32 CloseHandle.

Comme l'API Win32 ExitThread, _endthreadex ne ferme pas le handle du thread. Ainsi, quand vous utilisez _beginthreadex et _endthreadex, vous devez fermer le handle du thread en appelant l'API Win32 CloseHandle.

Notes

_endthread et _endthreadex empêchent l'appel des destructeurs C++ en attente dans le thread.

Configuration requise

Fonction

En-tête requis

_endthread

<process.h>

_endthreadex

<process.h>

Pour plus d'informations sur la compatibilité, voir Compatibilité.

Bibliothèques

Uniquement les versions multithread des bibliothèques Runtime C.

Exemple

Voir l'exemple pour _beginthread.

Équivalent .NET Framework

Non applicable. Pour appeler la fonction C standard, utilisez PInvoke. Pour plus d'informations, voir Exemples d'appel de plateforme.

Voir aussi

Référence

Contrôle de processus et d'environnement

_beginthread, _beginthreadex