Exercise 3: Implementing Rust's mpsc::sync_channel§

In exercise 3, you are asked to implement a C version of Rust's std::sync::mpsc::sync_channel.

This assignment will introduce you to an alternative model to shared-memory parallelism - parallel programming via message passing, which is widely used in practice. Message passing layers such as channels can be implemented using shared-memory parallelism.

The detailed specification is contained in this README.md file contained in the starter repo at https://git.cs.vt.edu/cs3214-staff/mpsc as well as in the mpsc.h header file. Run the tests with ./testall.sh

Please fork this repo and then work with your clone.
Don't forget to make the clone private.

This is an individual exercise.

Submit your mpsc.c file, and only this file.