Java Memory Model
The Java specification model that defines visibility, ordering, synchronization, and happens-before relationships between threads.
Technical Context
It explains when a write performed by one thread is guaranteed to become visible to another. Correct concurrent code depends on synchronization actions such as monitor release/acquire, volatile access, thread start/join, and higher-level concurrency primitives rather than assumptions about cache flushing.
Related Concepts
- happens-before
- volatile
- synchronized
- data race