如何在C#中使用synchronized关键字

   2024-09-30 5340
核心提示:在C#中,没有像Java那样的synchronized关键字以下是一个简单的示例,展示了如何在C#中使用lock语句:using System;using System.

在C#中,没有像Java那样的synchronized关键字

以下是一个简单的示例,展示了如何在C#中使用lock语句:

using System;using System.Threading;class Program{    private static readonly object _lockObject = new object();    public static void Main()    {        Thread thread1 = new Thread(DoWork);        Thread thread2 = new Thread(DoWork);        thread1.Start();        thread2.Start();        thread1.Join();        thread2.Join();        Console.WriteLine("Finished.");    }    private static void DoWork()    {        lock (_lockObject)        {            for (int i = 0; i < 5; i++)            {                Console.WriteLine($"Thread {Thread.CurrentThread.ManagedThreadId} is working...");                Thread.Sleep(1000);            }        }    }}

在这个示例中,我们创建了两个线程,它们都调用DoWork方法。DoWork方法中的lock语句确保同一时间只有一个线程可以访问该代码块。这样可以防止多个线程同时访问共享资源(在本例中为控制台),从而避免潜在的数据不一致和竞争条件。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号