Problems with Locking
Appropriate locking can guarantee correctness.
However, it also introduces potential undesirable effects:
- Deadlock
- No transactions can proceed; each waiting on lock held by another.
- Starvation
- One transaction is permanently "frozen out" of access to data.
- Reduced performance
- Locking introduces delays while waiting for locks to be released.
|