Concurrency basics · interview question
Why is it important to release a ReentrantLock in a finally block?
Multiple choiceHardchapter-15-curatedpremiumconcurrencysynchronized-and-locks
Answer and explanation
Correct answer
C. To ensure the lock is released even if an exception occurs
Why
ReentrantLocks must be manually released, and if an exception is thrown, failing to release the lock could lead to deadlocks. Using a finally block ensures that the lock is released regardless of how the try block is exited.
Test yourself on Concurrency basics
A free test with instant, explained results. No account needed.
More Concurrency basics questions
- How can you avoid deadlocks when using multiple ReentrantLocks in a method?
- What does the 'volatile' keyword guarantee in Java?
- Why might using 'volatile' alone be insufficient for ensuring thread safety when updating a shared counter?
- Consider the following code snippet. What issue might occur if 'flag' is not declared as 'volatile'?
- When using synchronized blocks, how can you ensure fairness among threads?
- How would you explain a common use case for 'volatile' variables in an interview?