C语言如何让两个函数同时执行
时间: 2023-12-25 13:06:50 浏览: 629
在C语言中,如果你想要两个函数同时执行,可以使用多线程的方式来实现。可以使用pthread库中的函数创建线程并分别执行两个函数。具体步骤如下:
1. 包含头文件`#include<pthread.h>`。
2. 定义两个函数,分别为函数`func1()`和函数`func2()`。
3. 在主函数中,使用`pthread_create()`函数创建两个线程,分别执行`func1()`和`func2()`。
4. 使用`pthread_join()`函数等待两个线程执行结束。
示例代码:
```c
#include <stdio.h>
#include <pthread.h>
void* func1(void* arg) {
printf("Thread 1 is running\n");
// 在这里编写func1函数的代码
return NULL;
}
void* func2(void* arg) {
printf("Thread 2 is running\n");
// 在这里编写func2函数的代码
return NULL;
}
int main() {
pthread_t thread1, thread2;
pthread_create(&thread1, NULL, func1, NULL);
pthread_create(&thread2, NULL, func2, NULL);
pthread_join(thread1, NULL);
pthread_join(thread2, NULL);
return 0;
}
```
以上代码中,`pthread_create()`函数用于创建线程,它的第一个参数是指向线程标识符的指针,第二个参数是线程的属性(通常为NULL),第三个参数是要执行的函数,最后一个参数是函数的参数(通常为NULL)。`pthread_join()`函数用于等待线程执行结束,它的第一个参数是线程标识符,第二个参数是返回值(通常为NULL)。
阅读全文