#include #include #include #include #include #include #define BUFFER_SIZE 10 typedef struct buffer { sem_t empty; sem_t full; pthread_mutex_t mutex; int pos; int data[BUFFER_SIZE]; } buffer; void *produce(void *buf); void *consume(void *buf); void init_buffer(buffer * buf);