Concurrency basics · interview question
In a multicore system, what role does 'volatile' play regarding CPU cache?
Multiple choiceHardchapter-15-curatedpremiumconcurrencythe-volatile-keyword
Answer and explanation
Correct answer
A. It ensures updates to a volatile variable are propagated to main memory immediately
Why
Volatile ensures that whenever a volatile variable is updated, the change is immediately written to main memory, and any read of the variable will fetch the latest value from main memory.
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?