Lock Requirements: Mutual Exclusion, Deadlock Freedom, and Liveness - Distributed Locking | OneNoughtOne