James Hawkins wrote:
(or the equivalent) then they should all only be as parameters to Interlocked* functions
Does that apply to the TRACE's as well?
No. If you can easily change TRACE's to use the return value from an Interlocked* function then that may be preferable, but it won't change how the program functions so it is fine if you don't.
Rob