Java Memory Model Litmus Tests.
This repository contains JCStress tests for Understanding Java Memory Model (JMM) blog post.
AtomicitySanityTests.java
to check Java atomicity
mechanisms.
- Plain variables
- Volatile variables
- Synchronized
- AtomicInteger
LitmusTests.java
to evaluate Java JMM guarantees.
- Message Passing
- Store Buffering
- Load Buffering
- Coherence
- Independent Reads of Independent Writes (IRIW)
The official JCStress framework includes many more samples, for further information please refer to it.