#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <pthread.h>
#include <semaphore.h>
sem_t sem_1;
sem_t sem_2;
void* run(void* arg){
while(1){
sem_wait(&sem_2);
printf("子线程\n");
sleep(1);
sem_post(&sem_1);
}
}
int main(int argc, const char *argv[])
{
pthread_t id;
pthread_create(&id,NULL,run,NULL);
pthread_detach(id);
sem_init(&sem_1,0,1);
sem_init(&sem_2,0,0);
while(1){
sem_wait(&sem_1);
printf("主线程\n");
sleep(1);
sem_post(&sem_2);
}
return 0;
}
3.07 晚自习作业
最新推荐文章于 2024-09-25 13:54:13 发布