c编写两个线程独立运行
时间: 2024-09-26 20:02:34 浏览: 24
在C语言中,我们可以使用POSIX线程库(pthreads)来创建和管理线程,让程序中的两个任务独立并发运行。下面是一个简单的示例,展示如何创建两个线程:
```c
#include <pthread.h>
#include <stdio.h>
// 线程函数1
void *thread_function_1(void *arg) {
printf("Thread 1 is running.\n");
// 这里放置线程1的具体操作
pthread_exit(NULL); // 线程完成
}
// 线程函数2
void *thread_function_2(void *arg) {
printf("Thread 2 is running.\n");
// 这里放置线程2的具体操作
pthread_exit(NULL);
}
int main() {
pthread_t thread1, thread2; // 创建两个线程ID
// 创建并启动线程1
if (pthread_create(&thread1, NULL, thread_function_1, NULL)) {
perror("Creating thread 1 failed");
return 1;
}
// 创建并启动线程2
if (pthread_create(&thread2, NULL, thread_function_2, NULL)) {
perror("Creating thread 2 failed");
return 1;
}
// 主线程等待两个子线程结束
pthread_join(thread1, NULL);
pthread_join(thread2, NULL);
printf("Both threads have finished.\n");
return 0;
}
```
在这个例子中,`thread_function_1` 和 `thread_function_2` 分别代表两个独立运行的线程任务。主函数`main`首先创建这两个线程,然后主线程通过`pthread_join`等待它们各自执行完毕。
阅读全文