[concurrency-interest] Volatile field use cases?

Hanson Char hanson.char at gmail.com
Fri Oct 27 12:39:12 EDT 2006

For some/many reasons, I've been finding volatile useful all the time.
 One pattern I find particularly interesting is the way volatile is
taken advantage of in the implementation of CopyOnWriteArrayList.  The
other is to use volatile to ensure safe publication when a field
cannot be made final.

My 2 cents.


On 10/26/06, Jeremy Manson <jmanson at cs.umd.edu> wrote:
> 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.
> Thanks,
>                                         Jeremy
> _______________________________________________
> Concurrency-interest mailing list
> Concurrency-interest at altair.cs.oswego.edu
> http://altair.cs.oswego.edu/mailman/listinfo/concurrency-interest

More information about the Concurrency-interest mailing list