Volatile is a keyword that allows you to turn off certain optimizations. Unfortunately, it is also used incorrectly many times as a way to synchronize threads.