A multi-threaded Java simulation of a Car Wash and Gas Station implementing the classic Producer-Consumer problem. Features custom Semaphore and Mutex classes to manage shared resources and prevent race conditions, developed for the CS241 Operating Systems 1 course at Cairo University.
java concurrency multithreading mutex producer-consumer operating-systems race-conditions semaphores syncronization bounded-buffer cs241 cairo-university cairo-university-fscu
-
Updated
Nov 28, 2025 - Java