What is Optimistic vs Pessimistic Locking?

Updated Apr 28, 2026

Short answer

Pessimistic locking assumes conflict and locks early. Optimistic locking assumes no conflict, proceeds, and checks for changes before committing (e.g., CAS).

Deep explanation

Mid-level concurrency focuses on coordination patterns. The goal is to move beyond simple 'locks' and use high-level abstractions provided by the language or framework (like Thread Pools) to ensure scalability.

Real-world example

A database connection pool limiting the number of simultaneous connections to 20.

Common mistakes

  • Using a heavy Mutex for a scenario where 99% of operations are Reads.

Follow-up questions

  • What is the 'Condition' variable in a lock?

More Concurrency interview questions

View all →