C# Program to Demonstrate Lock in Thread

This is a C# Program to demonstrate lock in thread.

Problem Description

This C# Program Demonstrates Lock in Thread.

Problem Solution

The lock keyword marks a statement block as a critical section by obtaining the mutual-exclusion lock for a given object, executing a statement, and then releasing the lock. The following example includes a lock statement.

Program/Source Code

Here is source code of the C# Program to Demonstrate Lock in Thread. The C# program is successfully compiled and executed with Microsoft Visual Studio. The program output is also shown below.

/*
 *  C# Program to Demonstrate Lock in Thread
 */
 
using System;
using System.Threading;
 
class Program
{
    static readonly object _object = new object();
 
    static void TEST()
    {
        lock (_object)
        {
            Thread.Sleep(100);
            Console.WriteLine(Environment.TickCount);
        }
    }
    static void Main()
    {
        for (int i = 0; i < 10; i++)
        {
            ThreadStart start = new ThreadStart(TEST);
            new Thread(start).Start();
        }
    }
}
Program Explanation

In this C# Program, using for loop we are creating new thread. The lock keyword marks a statement block as a critical section by obtaining the mutual-exclusion lock for a given object, executing a statement. The sleep() method is used for making a thread pause for a specific period of time then release the lock.

advertisement
Runtime Test Cases
 
900500
900593
900687
900796
900890
900999
901092
901186
901295
901389

Sanfoundry Global Education & Learning Series – 1000 C# Programs.

If you wish to look at all C# Programming examples, go to 1000 C# Programs.

advertisement
Subscribe to our Newsletters (Subject-wise). Participate in the Sanfoundry Certification to get free Certificate of Merit. Join our social networks below and stay updated with latest contests, videos, internships and jobs!

Youtube | Telegram | LinkedIn | Instagram | Facebook | Twitter | Pinterest
Manish Bhojasia - Founder & CTO at Sanfoundry
I’m Manish - Founder and CTO at Sanfoundry. I’ve been working in tech for over 25 years, with deep focus on Linux kernel, SAN technologies, Advanced C, Full Stack and Scalable website designs.

You can connect with me on LinkedIn, watch my Youtube Masterclasses, or join my Telegram tech discussions.

If you’re in your 20s–40s and exploring new directions in your career, I also offer mentoring. Learn more here.