Pedro Fortuny Ayuso

Profesor Ayudante Doctor, Matemática Aplicada
Escuela Politécnica de Ingeniería de Gijón.
The producer consumer problem

While studying C++, I came accross my lack of training on thread programming. The producer-consumer problem is the first exercise you are asked to solve (and probably the only one worth studying). A complete (and quite careful with potential problems) solution is available here. To run the program, build it:

$ gcc producer_consumer.c -lm -lpthread -o producer_consumer

and then run:

$ ./producer consumer T p c

where T is the maximum number of "items" to be produced, p is the number of producers and c is the number of consumers.