命名空间
变体
操作

thrd_create

来自 cppreference.cn
< c‎ | thread
在头文件 <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_tint(*)(void*) 的 typedef,这与 POSIX 等价的 void*(*)(void*) 不同。

所有线程局部存储值(参见 tss_create)都初始化为 NULL

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

[编辑] 参考

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

[编辑] 另请参阅

分离线程
(函数) [编辑]
阻塞直到线程终止
(函数) [编辑]
C++ 文档 关于 thread