Namespaces
Variants

thrd_create

From cppreference.net
定义于头文件 <threads.h>
int thrd_create ( thrd_t * thr, thrd_start_t func, void * arg ) ;
(C11 起)

创建一个新线程执行函数 func 。该函数以 func ( arg ) 的形式被调用。

如果成功, thr 所指向的对象将被设置为新线程的标识符。

该函数的完成 同步于 线程的启动。

目录

参数

thr - 指向存放新线程标识符的内存位置的指针
func - 要执行的函数
arg - 传递给函数的参数

返回值

thrd_success 表示新线程创建成功。若内存不足则返回 thrd_nomem ,若发生其他错误则返回 thrd_error

注释

线程标识符在线程完成并加入或分离后,可能会被新线程重复使用。

类型 thrd_start_t int ( * ) ( void * ) 的 typedef 定义,这与 POSIX 等效类型 void * ( * ) ( void * ) 有所不同

所有线程特定存储值(参见 tss_create )均初始化为 NULL

从函数 func 返回等效于调用 thrd_exit ,其参数等于 func 的返回值。

参考文献

  • C17 标准 (ISO/IEC 9899:2018):
  • 7.26.5.1 thrd_create 函数 (页: 279)
  • C11 标准 (ISO/IEC 9899:2011):
  • 7.26.5.1 thrd_create 函数 (p: 383)

参见

分离线程
(函数)
阻塞直至线程终止
(函数)
C++ 文档 for thread