thrd_exit
来自 cppreference.cn
定义于头文件 <threads.h> |
||
_Noreturn void thrd_exit( int res ); |
(自 C11 起) (直到 C23) |
|
[[noreturn]] void thrd_exit( int res ); |
(自 C23 起) | |
首先,对于每个使用非空析构函数创建的线程特定存储键,并且其关联值非空(参见 tss_create),thrd_exit
将与该键关联的值设置为 NULL,然后使用该键的先前值调用析构函数。调用析构函数的顺序未指定。
之后,如果仍然存在具有非空析构函数和值的键(例如,如果析构函数执行了 tss_set),则该过程最多重复 TSS_DTOR_ITERATIONS 次。
最后,thrd_exit
函数终止调用线程的执行,并将其结果代码设置为 res
。
如果程序中的最后一个线程通过 thrd_exit
终止,则整个程序将终止,如同调用了 exit 并以 EXIT_SUCCESS 作为参数一样(因此由 atexit 注册的函数在该最后一个线程的上下文中执行)
目录 |
[编辑] 参数
res | - | 要返回的结果值 |
[编辑] 返回值
(无)
[编辑] 参考文献
- C17 标准 (ISO/IEC 9899:2018)
- 7.26.5.5 thrd_exit 函数 (页: 280)
- C11 标准 (ISO/IEC 9899:2011)
- 7.26.5.5 thrd_exit 函数 (页: 384)
[编辑] 参见
(C11) |
阻塞直到线程终止 (函数) |
(C11) |
分离线程 (函数) |