Two phase locking (2PL) is a general-purpose concurrency control that was invented in 1976. It provides both serializability and opacity, making it a strong isolation level. 2PL has several advantages, including simplicity and a consistent view of data. However, it has poor read-scalability and is prone to live-lock. To overcome these limitations, a new algorithm called Two-Phase Locking Starvation-Free (2PLSF) has been developed. 2PLSF uses scalable read-indicators to improve performance, especially for read-heavy workloads. It also addresses the issue of live-lock by providing starvation-free transactions. Overall, 2PLSF is a more advanced and scalable version of the traditional 2PL.
http://concurrencyfreaks.blogspot.com/2023/09/50-years-later-is-two-phase-locking.html