pthread_create
时间: 2023-06-28 11:12:07 浏览: 84
`pthread_create` 是一个在 Unix/Linux 系统上创建线程的函数。它的原型如下:
```c
int pthread_create(pthread_t *thread, const pthread_attr_t *attr,
void *(*start_routine) (void *), void *arg);
```
其中,`thread` 是指向线程标识符的指针,`attr` 是指向线程属性的指针,`start_routine` 是线程函数的指针,`arg` 是传递给线程函数的参数。函数返回值为 0 表示成功,否则表示失败。
`pthread_create` 函数创建一个新线程,并将线程 ID 存储在 `thread` 指向的内存中。线程属性可以通过 `attr` 参数指定,如果为 `NULL` 则使用默认属性。线程函数 `start_routine` 是新线程的入口点,它接受一个指向任意类型数据的指针,可以通过 `arg` 参数传递给它。线程函数返回时,线程也随之终止,并将返回值传递给主线程。
相关问题
Pthread_create
pthread_create是一个POSIX线程库函数,用于创建一个新的线程。它的原型如下:
```c
#include <pthread.h>
int pthread_create(pthread_t *thread, const pthread_attr_t *attr,
void *(*start_routine) (void *), void *arg);
```
其中,`thread`参数是指向线程标识符的指针,`attr`参数是指向线程属性的指针,`start_routine`参数是指向线程函数的指针,`arg`参数是传递给线程函数的参数。
调用pthread_create函数会创建一个新的线程,并将其加入到进程中。新线程会从`start_routine`函数开始执行,并且可以通过`arg`参数传递参数给该函数。如果不需要传递参数,可以将`arg`设置为NULL。
在创建线程时,可以通过`attr`参数指定线程的属性,例如线程的调度策略、优先级等。如果不需要指定属性,可以将`attr`设置为NULL。
当线程函数执行完毕时,线程会自动退出,并且会自动释放其占用的资源。
阅读全文