Not All Schedules Lead to Collisions
The scheduler chooses a path of the executions of the threads/processes competing for resources.
Synchronization constrains the schedule to avoid illegal states.
Some paths “just happen” to dodge dangerous states as well.
What is the probability that philosophers will deadlock?
- How does the probability change as:
think times increase?
number of philosophers increases?