static void Main(string[] args) { lock (_lock1) { var t = new Thread(() => { lock (_lock1) { Console.WriteLine("Lock1: "); } }); t.Start(); t.Join(); } Console.ReadKey(); } static readonly object _lock1 = new object();