“A reference to a volatile field will not be treated as volatile” implications

You are not doing anything wrong. According to the documentation:

A volatile field should not normally
be passed using a ref or out
parameter, since it will not be
treated as volatile within the scope
of the function. There are exceptions
to this, such as when calling an
interlocked API.

Leave a Comment