Philosophers tackles the "Dining Philosophers" problem, focusing on concurrency issues such as deadlock and starvation. It simulates philosophers as threads/processes using mutexes/semaphores for fork management. The program logs state changes and detects starvation, ending when a philosopher dies or all have eaten a specified number of times.
synchronization deadlock multithreading processes threads mutexes concurrency-management semaphores state-logging fork-management
-
Updated
Aug 5, 2024 - C