_endthread, _endthreadex

Termina un thread creato da _beginthread o da _beginthreadex, rispettivamente.

Nota importanteImportante

Questa API non può essere utilizzata nelle applicazioni che vengono eseguite in Windows Runtime.Per ulteriori informazioni, vedere Funzioni CRT non supportate con /ZW.

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

Parametri

  • retval
    Codice di uscita del thread.

Note

È possibile chiamare _endthread o _endthreadex in modo esplicito per terminare un thread; tuttavia, _endthread o _endthreadex vengono chiamati automaticamente quando il thread termina la routine passata come parametro a _beginthread o _beginthreadex.La terminazione di un thread con una chiamata a endthread o a _endthreadex consente di assicurare il ripristino corretto delle risorse allocate per il thread.

[!NOTA]

Per un file eseguibile collegato a Libcmt.lib, non chiamare ExitThread dell'API Win32; in questo modo si impedisce al sistema in fase di esecuzione di recuperare le risorse allocate._endthread e _endthreadex recuperano le risorse allocate al thread e poi chiamano ExitThread.

_endthread chiude automaticamente gli handle del thread.(Questo comportamento è diverso da quello dell'API Win32 ExitThread ). Pertanto, quando si utilizzano _beginthread e _endthread, l'handle del thread non viene chiuso in modo esplicito chiamando CloseHandle dell'API Win32.

Come ExitThread dell'API Win32, _endthreadex non chiude gli handle del thread.Di conseguenza, quando si utilizza _beginthreadex e _endthreadex, è necessario chiudere gli handle del thread chiamando CloseHandle dell'API Win32.

[!NOTA]

_endthread e _endthreadex fanno si che i distruttori di C++ pendenti nel thread non siano chiamati.

Requisiti

Funzione

Intestazione obbligatoria

_endthread

<process.h>

_endthreadex

<process.h>

Per ulteriori informazioni sulla compatibilità, vedere Compatibilità nell'introduzione.

Librerie

Solo versioni con multithreading delle Librerie di runtime C.

Esempio

Vedere l'esempio per _beginthread.

Equivalente .NET Framework

Non applicabile. Per chiamare la funzione standard C, utilizzare PInvoke. Per ulteriori informazioni, vedere Esempi di Invocazione della Piattaforma.

Vedere anche

Riferimenti

Processo e controllo ambiente

_beginthread, _beginthreadex