Concurrency basics · interview question
How can you avoid deadlocks when using multiple ReentrantLocks in a method?
Multiple choiceHardchapter-15-curatedpremiumconcurrencysynchronized-and-locks
Answer and explanation
Correct answer
B. By always acquiring the locks in a consistent order.
Why
To avoid deadlocks, it's important to acquire multiple locks in a consistent order throughout the application. This ensures that threads do not end up in a situation where they are waiting on each other indefinitely.
Test yourself on Concurrency basics
A free test with instant, explained results. No account needed.
More Concurrency basics questions
- 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?
- How can you ensure that a thread releases a lock if it was not able to acquire it using tryLock()?