[concurrency-interest] Volatile field use cases?

Jeremy Manson jmanson at cs.umd.edu
Fri Oct 27 02:07:05 EDT 2006

Hi folks,

Some of us were talking off line about the ways in which people use 
volatile fields.  They can be used for writing a variety of interesting 
data structures, like non-blocking queues, but I have no idea how many 
people are doing this.

I thought it might be interesting to ask the crowd here about the more 
interesting ways in which you use volatiles.  Do you have something 
fabulously interesting that you do?  Do you write non-blocking data 
structures?  One thing I don't really know is if people ever write code 
that relies on strong guarantees between more than one volatile field -- 
do you?

Basically, what are you folks using them to do?

All of this is by way of finding out what the impact of the JMM has 
been, now that we are a couple of years down the line: seeing what works 
and what doesn't, and laying out plans for future memory models.



More information about the Concurrency-interest mailing list