Primitive Queue<any T> considerations
john.r.rose at oracle.com
Thu Nov 19 00:26:58 UTC 2015
On Nov 18, 2015, at 4:01 PM, Vitaly Davidovich <vitalyd at gmail.com> wrote:
> Right, by performance penalty I meant that I'd like to ask only for atomicity and not also ordering. If the T is <= machine word, I'd like it to act just like if I hadn't requested atomicity. In other words, I don't want fences here for ordering.
OK, check that. So an atomic T is not the same as a Java-volatile T.
This is a reason *not* to reuse the "volatile" keyword for def-site atomicity,
and to consider a new keyword for use-site atomicity.
We won't provide keywords for all use cases, since wrappers are
expressive enough to fill the gaps (as in C++). The most important
new expressive point (IMO) is opt-in, def-site, anti-tearing; that merits
something like a keyword, since it has security implications.
More information about the valhalla-dev