[concurrency-interest] Difference between AtomicReference.getPlain() and getOpaque()

Aleksey Shipilev shade at redhat.com
Sun Oct 15 05:17:15 EDT 2017


On 10/15/2017 10:54 AM, Никита Маршалкин wrote:
> Here's note by Doug Lea on memory orderings in JDK 9. 
> 
> http://gee.cs.oswego.edu/dl/html/j9mm.html <http://gee.cs.oswego.edu/dl/html/j9mm.html>

TL;DR: "opaque" = "plain" + access atomicity + coherence + eventual progress

Access atomicity:
 http://hg.openjdk.java.net/code-tools/jcstress/file/6a9ce3b8ccc4/jcstress-samples/src/main/java/org/openjdk/jcstress/samples/JMMSample_01_AccessAtomicity.java

Coherence:
 http://hg.openjdk.java.net/code-tools/jcstress/file/6a9ce3b8ccc4/jcstress-samples/src/main/java/org/openjdk/jcstress/samples/JMMSample_03_Coherence.java

Thanks,
-Aleksey

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://cs.oswego.edu/pipermail/concurrency-interest/attachments/20171015/25382b02/attachment.sig>


More information about the Concurrency-interest mailing list