Herb Sutter wrote a series of articles in Dr. Dobbs in 2008/09 with several good example of minimizing locking in concurrent environments.
Thanks for all the responses. Come to think of it, I think I can use the SR/SW, non-context switching, wrapped into a templatetized class that implements an array of volatile T.