Concurrency basics · interview question
Why does using 'synchronized' on a non-static method change runtime behavior?
Multiple choiceEasychapter-15-curatedpremiumconcurrencysynchronized-and-locks
Answer and explanation
Correct answer
D. It synchronizes the method on the instance
Why
Synchronized on a non-static method locks the instance of the object, ensuring that only one thread can execute any synchronized method on the same instance at a time. This prevents race conditions within the instance.
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?