A wait-for condition exists when an execution already holding one or more resources requests additional resources. It is one of four conditions required for deadlock, alongside mutual exclusion, no preemption, and circular wait. section 11.1.1
Trains waiting for crossings
Imagine several trains, each holding a crossing while waiting for the next crossing to become free. When the trains form a circle, every execution waits for another to release a resource, producing deadlock. section 11.1.1
Use the resource allocation graph to trace which executions hold resources and which additional resources they await. section 11.1.1
