I know I can't use lock (SyncLock) on a value type, as explained in this article:
http://msdn.microsoft.com/msdnmag/issues/03/01/NET/
But my question is, does this mean I don't need to? or do I need to wrap the Boolean within an object, so it can be locked? If the answer is no, I don't need to lock it, what happens when two threads try to change the value at the same time? In the application I am currently working on, it is possible two threads could try to set it to both true and false at the same time.