Subj : Re: [.NET] Volatile Fields To : comp.programming.threads From : David Schwartz Date : Sun Sep 18 2005 12:28 am "Cool Guy" wrote in message news:9bux5adfnj7d$.dlg@cool.guy.abc.xyz... > Joe Seigh wrote: > >> Cache has no effect on read/write ordering. It's the memory model that >> does. >> You could have a system without cache and it would still have the same >> issues >> with read/write ordering. So trying to imagine what is happening with a >> hardware entity, which by definition you can't see, only serves to >> confuse >> yourself. > > My confusion arises from the fact that only *one* of those fields is > volatile in the example linked from the OP, and not *both* of them, which > leads me to believe that the one field that isn't volatile could be > read/written from/to the cache instead of from/to main memory and thus the > code isn't thread-safe. What do caches have to do with thread-safety? It's read/write *ordering* that creates thread safety problems, not caches. DS .