public void SomeAsyncMethod() { for (int i = 0; i < 1000; i++) { lock (freddy) { someValue += 1; Console.WriteLine("{0} set value to {0}", Thread.CurrentThread.Name, someValue); Thread.Sleep(TimeSpan.FromMilliseconds(500)); } } } }