Skip to content

The "Philosopher" project at 42 is a classic problem in concurrent programming, often referred to as the "Dining Philosophers Problem."

Notifications You must be signed in to change notification settings

antonioldev/phylosopher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

In Philosopher, the 7th project of 42 school, I dive headfirst into the world of computer science and concurrent programming through the classic Dining Philosophers Problem. Here, I'm faced with a scenario where a group of philosophers sits at a table with a limited number of forks. To eat, a philosopher must pick up both adjacent forks. However, I must grapple with the challenge of avoiding deadlock or starvation if multiple philosophers try to pick up the same fork simultaneously.

My main goal in the Philosopher project is to learn about multithreading and data races. I delve deep into the intricacies of concurrent programming, exploring how to manage shared resources efficiently and prevent conflicts between multiple threads accessing the same data. Through tackling the Dining Philosophers Problem, I gain invaluable hands-on experience in synchronizing access to resources and thwarting race conditions in my code.

Additionally, there's a bonus challenge for those of us eager to expand our understanding of concurrent programming concepts. By implementing solutions using multiprocesses and semaphores, I explore alternative approaches to solving the Dining Philosophers Problem, enriching my toolkit for tackling complex concurrency issues.

Overall, the Philosopher project at 42 school provides me with a rich learning experience in concurrent programming, equipping me with the skills and knowledge necessary to develop robust, scalable software systems in real-world scenarios.

About

The "Philosopher" project at 42 is a classic problem in concurrent programming, often referred to as the "Dining Philosophers Problem."

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published