创建两个线程,第一个线程打印数字1-5第二个线程打印数字6-10linux下编写 c语言
时间: 2024-03-01 19:53:36 浏览: 22
好的,这是一个简单的多线程例子,使用pthread库实现:
```c
#include <stdio.h>
#include <pthread.h>
void* print1to5(void* arg) {
for(int i = 1; i <= 5; i++) {
printf("%d\n", i);
}
return NULL;
}
void* print6to10(void* arg) {
for(int i = 6; i <= 10; i++) {
printf("%d\n", i);
}
return NULL;
}
int main() {
pthread_t t1, t2;
pthread_create(&t1, NULL, print1to5, NULL);
pthread_create(&t2, NULL, print6to10, NULL);
pthread_join(t1, NULL);
pthread_join(t2, NULL);
return 0;
}
```
在主函数中,我们创建了两个线程t1和t2,分别使用pthread_create函数创建。第一个参数是指向线程标识符的指针,第二个参数是线程属性,我们使用默认值NULL,第三个参数是指向线程函数的指针,最后一个参数是传递给线程函数的参数,这里我们不需要传递任何参数,所以传入NULL。
在线程函数中,我们只是简单地循环打印数字1-5和6-10。
最后,我们使用pthread_join函数等待线程t1和t2结束,释放它们占用的资源。