February 2019
Intermediate to advanced
672 pages
16h 50m
English
The Dining Philosophers problem was first introduced by Edgar Dijkstra (who, as you learned in Chapter 8, Advanced Introduction to Concurrent and Parallel Programming was a leading pioneer in concurrent programming) in 1965. The problem was first demonstrated using different technical terms (resource contention in computer systems), and was later rephrased by Tony Hoare, a British computer scientist and the inventor of the quicksort sorting algorithm. The problem statement is as follows.
Five philosophers sit around a table, and each has a bowl of food in front of them. Placed between these five bowls of food are five forks, so each philosopher has a fork on their left side, and one on their right side. This ...