Re: The "volatile trick"
I don't consider myself any kind of expert in this area, but I would recommend a different keyword. For something that has been established for so long, additional usage will be confusing. And, if there are any (unforeseen) side effects, recompilation of codes with the original use of "volatile" could break applications that have worked up to that point.
Why not something like "threadsafe" as the new keyword? It's only got 2 more letters than "volatile." :-)
Clay Breshears
Intel Innovative Software Education
"There are no evil threads; just threads programmed for evil."