_endthread
, _endthreadex
Przerywa wątek; _endthread
przerywa wątek utworzony przez _beginthread
program i _endthreadex
przerywa wątek utworzony przez _beginthreadex
program .
Składnia
void _endthread( void );
void _endthreadex(
unsigned retval
);
Parametry
retval
Kod zakończenia wątku.
Uwagi
Można wywołać _endthread
lub _endthreadex
jawnie przerwać wątek; jednak lub _endthreadex
jest wywoływany automatycznie, _endthread
gdy wątek powraca z procedury przekazanej jako parametr do _beginthread
lub _beginthreadex
. Przerywanie wątku za pomocą wywołania endthread
metody lub _endthreadex
pomaga zapewnić prawidłowe odzyskiwanie zasobów przydzielonych dla wątku.
Uwaga
W przypadku pliku wykonywalnego połączonego z biblioteką Libcmt.lib nie należy wywoływać interfejsu API Win32 ExitThread
. Uniemożliwia to systemowi czasu wykonywania odzyskiwanie przydzielonych zasobów. _endthread
i _endthreadex
odzyskać przydzielone zasoby wątku, a następnie wywołać metodę ExitThread
.
_endthread
automatycznie zamyka uchwyt wątku. (To zachowanie różni się od win32 ExitThread
INTERFEJS API.) W związku z tym w przypadku używania elementów _beginthread
i _endthread
nie zamykaj jawnie dojścia wątku przez wywołanie interfejsu API Win32 CloseHandle
.
Podobnie jak interfejs API Win32 ExitThread
, _endthreadex
nie zamyka uchwytu wątku. W związku z tym w przypadku używania elementów _beginthreadex
i _endthreadex
należy zamknąć dojście wątku przez wywołanie interfejsu API Win32 CloseHandle
.
Uwaga
_endthread
i _endthreadex
powodują, że destruktory języka C++ oczekujące w wątku nie mają być wywoływane.
Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.
Wymagania
Function | Wymagany nagłówek |
---|---|
_endthread |
<process.h> |
_endthreadex |
<process.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Biblioteki
Tylko wielowątkowe wersje bibliotek czasu wykonywania języka C.
Przykład
Zobacz przykład dla elementu _beginthread
.