Multithreaded Programming in C# - Volatile Keyword Definition
Thevolatilekeyword alerts the compiler that multiple threads will access the_shouldStopdata member, and therefore it should not make any optimization assumptions about the state of this member. For more information, seevolatile (C# Reference).