-
Louis Gayina a rédigéLouis Gayina a rédigé
buffer.h 598 o
#ifndef PRIME_DIVS_BUFFER_H
#define PRIME_DIVS_BUFFER_H
#include <pthread.h>
#include <semaphore.h>
typedef struct queue {
int front, tail, size, capacity;
void** array;
} queue_t;
typedef struct buffer {
pthread_mutex_t mutex;
sem_t full;
sem_t empty;
queue_t* q;
} buffer_t;
queue_t* createQueue(int capacity);
buffer_t* createBuffer(int capacity);
void enqueue(queue_t* q, void* item);
void* dequeue(queue_t* q);
int empty(queue_t* q);
void Producer(buffer_t* b, void* add);
void* Consumer(buffer_t* b);
void* free_Buffer(buffer_t* b);
#endif //PRIME_DIVS_BUFFER_H