#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <pthread.h>
#include <errno.h>
#include <sys/ipc.h>
#include <semaphore.h>
#include <fcntl.h>
#include "queue.h"
#include "const.h"
#define N 10
time_t end_time;
sem_t mutex,full,empty,mutex2,full2,empty2;
Queue *qt,qt2; /*缓冲区*/
ElemType p;
void consumer(void *arg);
void productor(void *arg);
int main(int argc, char *argv[])
{
pthread_t id1,id2,id3;
int ret;
end_time = time(NULL)+30;
qt = InitQueue();
qt2 = InitQueue();
p.lNumber = 1000;
ret=sem_init(&mutex,0,1); /*初使化互斥信号量为1*/
ret=sem_init(&empty,0,N); /*初使化empty信号量为N*/
本内容试读结束,登录后可阅读更多
下载后可阅读完整内容,剩余4页未读,立即下载
- 1
- 2
- 3
前往页