thrd_exit
|
Definido en el encabezado
<threads.h>
|
||
|
_Noreturn
void
thrd_exit
(
int
res
)
;
|
(desde C11)
(hasta C23) |
|
|
[
[
noreturn
]
]
void
thrd_exit
(
int
res
)
;
|
(desde C23) | |
Primero, para cada clave de almacenamiento específica del hilo que fue creada con un destructor no nulo y para la cual el valor asociado es no nulo (ver
tss_create
),
thrd_exit
establece el valor asociado a la clave como
NULL
y luego invoca el destructor con el valor previo de la clave. El orden en que se invocan los destructores no está especificado.
Si, después de esto, quedan claves con destructores no nulos y valores (por ejemplo, si un destructor ejecutó tss_set ), el proceso se repite hasta TSS_DTOR_ITERATIONS veces.
Finalmente, la función
thrd_exit
termina la ejecución del hilo que la invoca y establece su código de resultado a
res
.
Si el último hilo en el programa termina con
thrd_exit
, todo el programa termina como si se llamara a
exit
con
EXIT_SUCCESS
como argumento (por lo que las funciones registradas por
atexit
se ejecutan en el contexto de ese último hilo)
Contenidos |
Parámetros
| res | - | el valor de resultado a devolver |
Valor de retorno
(ninguno)
Referencias
- Estándar C17 (ISO/IEC 9899:2018):
-
- 7.26.5.5 La función thrd_exit (p: 280)
- Estándar C11 (ISO/IEC 9899:2011):
-
- 7.26.5.5 La función thrd_exit (p: 384)
Véase también
|
(C11)
|
bloquea hasta que un hilo termine
(función) |
|
(C11)
|
desvincula un hilo
(función) |