philosophers

C | Multithreading

About the project

This project serves as an introduction to multithreading.
The purpose was to build 3 different programs to solve the dining philosophers problem, each with different constraints.

What I learned

Parallelism

Never had I developed multithreaded programs before this project.
It gave me the opportunity to learn about threads, mutex and semaphores.

Notes

Multithreading adds some complexity to the code structure but it was pleasant to learn.