pthread_create函数用法
时间: 2023-11-16 15:07:48 浏览: 115
create thread用法
pthread_create()函数是用于创建一个新的线程的函数,其用法如下:
```c
int pthread_create(pthread_t *restrict tidp, const pthread_attr_t *restrict attr, void *(*start_rtn)(void *), void *restrict arg);
```
其中,参数说明如下:
- tidp:指向线程标识符的指针,用于存储新线程的标识符。
- attr:指向线程属性的指针,用于设置新线程的属性,如果为NULL,则使用默认属性。
- start_rtn:指向线程函数的指针,新线程从该函数的地址开始执行。
- arg:传递给线程函数的参数。
下面是一个简单的例子,演示了如何使用pthread_create()函数创建一个新线程:
```c
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
void *thread_func(void *arg) {
printf("This is a new thread.\n");
pthread_exit(NULL);
}
int main() {
pthread_t tid;
int ret = pthread_create(&tid, NULL, thread_func, NULL);
if (ret != 0) {
printf("Failed to create a new thread.\n");
exit(1);
}
printf("Main thread.\n");
pthread_exit(NULL);
}
```
在上面的例子中,我们定义了一个新的线程函数thread_func(),该函数仅仅输出一条信息。在主函数中,我们使用pthread_create()函数创建了一个新线程,并将线程函数指针thread_func作为参数传递给该函数。在主函数中,我们也输出了一条信息。运行程序,可以看到输出了两条信息,分别来自主线程和新线程。
阅读全文