phread_create函数的用法
时间: 2023-08-20 18:06:16 浏览: 49
pthread_create函数是用于创建一个新的线程的函数。它的用法如下:
```c
#include <pthread.h>
int pthread_create(pthread_t *thread, const pthread_attr_t *attr,
void *(*start_routine) (void *), void *arg);
```
参数说明:
- `thread`:用于存储新线程的标识符的指针。
- `attr`:用于设置线程属性的指针,通常设置为NULL,表示使用默认属性。
- `start_routine`:指向线程函数的指针,新线程将从该函数开始执行。
- `arg`:传递给线程函数的参数。
返回值:
- 成功创建线程时,返回0;否则,返回错误代码。
使用示例:
```c
#include <stdio.h>
#include <pthread.h>
void* thread_function(void *arg) {
printf("Hello from a new thread!\n");
return NULL;
}
int main() {
pthread_t tid;
int ret;
ret = pthread_create(&tid, NULL, thread_function, NULL);
if (ret != 0) {
printf("Failed to create thread: %d\n", ret);
return 1;
}
printf("Thread created successfully.\n");
pthread_join(tid, NULL); // 等待线程结束
return 0;
}
```
在上面的示例中,`pthread_create`函数创建了一个新的线程,并且该线程执行`thread_function`函数。在`main`函数中,我们通过调用`pthread_join`函数等待新线程的结束,以确保主线程不会提前退出。
阅读全文