thrd_exit

< c‎ | thread
定义于头文件 <threads.h>
_Noreturn void thrd_exit( int res );
(C11 起)

首先,对于每个以非空析构器创建,关联值非空的(见 tss_create )线程特定存储关键, thrd_exit 设置与关键关联的值为 NULL ,然后以该关键的先前值调用析构器。析构器的调用顺序是未指定的。

若在此后,有剩余关键拥有非空的析构器和值(例如若析构器执行了 tss_set ),则至多重复 TSS_DTOR_ITERATIONS 次处理。

最后, thrd_exit 函数终止调用方线程的执行,并设置其结果码为 res

若程序中的最后线程以 thrd_exit 退出,则如同通过以 EXIT_SUCCESS 为参数调用 exit 一般终止整个程序(故 atexit 所注册的函数在最后线程的环境中执行)。

参数

res - 要返回的值

返回值

(无)

引用

  • C11 standard (ISO/IEC 9899:2011):
  • 7.26.5.5 The thrd_exit function (p: 384)

参阅

阻塞到线程终止为止
(函数)
分离线程
(函数)