Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Beendet einen Thread; _endthread
beendet einen Thread, der von _beginthread
einem thread erstellt und _endthreadex
beendet wird, der von _beginthreadex
.
Syntax
void _endthread( void );
void _endthreadex(
unsigned retval
);
Parameter
retval
Threadexitcode.
Hinweise
Sie können _endthread
oder _endthreadex
explizit aufrufen, um einen Thread zu beenden. Allerdings wird _endthread
oder _endthreadex
automatisch aufgerufen, wenn der Thread aus der als Parameter an _beginthread
oder _beginthreadex
übergebenen Routine zurückgegeben wird. Das Beenden eines Threads durch Aufruf von endthread
oder _endthreadex
stellt die ordnungsgemäße Wiederherstellung der dem Thread zugeordneten Ressourcen sicher.
Hinweis
Rufen Sie bei einer ausführbaren Datei, die mit Libcmt.lib verknüpft ist, nicht die Win32-API ExitThread
auf. Dadurch wird verhindert, dass das Laufzeitsystem zugeordnete Ressourcen zurückgibt. _endthread
und _endthreadex
geben zugeordnete Threadressourcen frei und rufen dann ExitThread
auf.
_endthread
schließt das Threadhandle automatisch. (Dieses Verhalten unterscheidet sich von win32 ExitThread
API.) Wenn Sie daher den Threadhandle verwenden _beginthread
und _endthread
nicht explizit schließen, indem Sie die Win32-API CloseHandle
aufrufen.
Wie die Win32-API ExitThread
_endthreadex
schließt das Threadhandle nicht. Wenn Sie also _beginthreadex
und _endthreadex
verwenden, müssen Sie das Threadhandle durch Aufrufen der CloseHandle
-Win32-API schließen.
Hinweis
_endthread
und _endthreadex
führen dazu, dass im Thread ausstehende C++-Destruktoren nicht aufgerufen werden.
Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Wie Sie dieses Verhalten ändern, erfahren Sie unter Globaler Status in der CRT.
Anforderungen
Funktion | Erforderlicher Header |
---|---|
_endthread |
<process.h> |
_endthreadex |
<process.h> |
Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
Libraries
Nur Multithread-Versionen von C-Laufzeitbibliotheken .
Beispiel
Ein Beispiel hierfür finden Sie unter _beginthread
.
Siehe auch
Prozess- und Umgebungskontrolle
_beginthread
, _beginthreadex