To understand deadlocks and livelocks is to understand locks, of which the prior terms are hyponyms. Resource may mean energy, some particular information, authorisation, a component, a thread, a person etc. Activities may be processes, tasks, components or subsystems within the overall system. Identifying and avoiding deadlocks and livelocks is important to the reliable functioning of the system. Requirements:Īny system which operates on multiple activity paths has the risk of facing deadlocks and livelocks. They can occur in all forms of system: digital, social and administrative. They result in undesirable system outcomes. In order to enable the reliable functioning of a system, deadlocks and livelocks must be avoided where possible. The origins of their identification and treatment begins with the advent of distributed computing, where multiple, distinct, active threads are interacting with the same data points.ĭeadlocks and Livelocks are emergent defects or faults within systems.
They are logical ‘traps’ caused by system design or non-deterministic phenomena.
Deadlocks and livelocks are states which prevent the proper functioning of a system.