Concurrency basics · interview question
How can you ensure that a thread releases a lock if it was not able to acquire it using tryLock()?
Multiple choiceMediumchapter-15-curatedpremiumconcurrencysynchronized-and-locks
Answer and explanation
Correct answer
C. Check the boolean result of tryLock()
Why
The tryLock() method returns a boolean indicating whether the lock was successfully acquired. It is the caller's responsibility to check this result and only call unlock() if the lock was acquired.
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?