thrd_exit
|
Défini dans l'en-tête
<threads.h>
|
||
|
_Noreturn
void
thrd_exit
(
int
res
)
;
|
(depuis C11)
(jusqu'à C23) |
|
|
[
[
noreturn
]
]
void
thrd_exit
(
int
res
)
;
|
(depuis C23) | |
D'abord, pour chaque clé de stockage spécifique au thread qui a été créée avec un destructeur non nul et pour laquelle la valeur associée est non nulle (voir
tss_create
),
thrd_exit
définit la valeur associée à la clé à
NULL
puis invoque le destructeur avec la valeur précédente de la clé. L'ordre dans lequel les destructeurs sont invoqués n'est pas spécifié.
Si, après cela, il reste des clés avec des destructeurs non nuls et des valeurs (par exemple, si un destructeur a exécuté tss_set ), le processus est répété jusqu'à TSS_DTOR_ITERATIONS fois.
Enfin, la fonction
thrd_exit
termine l'exécution du thread appelant et définit son code de résultat à
res
.
Si le dernier thread du programme est terminé avec
thrd_exit
, l'ensemble du programme se termine comme s'il appelait
exit
avec
EXIT_SUCCESS
comme argument (ainsi les fonctions enregistrées par
atexit
sont exécutées dans le contexte de ce dernier thread)
Table des matières |
Paramètres
| res | - | la valeur de résultat à retourner |
Valeur de retour
(aucun)
Références
- Norme C17 (ISO/CEI 9899:2018) :
-
- 7.26.5.5 La fonction thrd_exit (p : 280)
- Norme C11 (ISO/IEC 9899:2011) :
-
- 7.26.5.5 La fonction thrd_exit (p: 384)
Voir aussi
|
(C11)
|
bloque jusqu'à la fin d'un thread
(fonction) |
|
(C11)
|
détache un thread
(fonction) |