莞深喷涂杨生 发表于 2023-3-21 12:38:12

面试常考:C#用两个线程交替打印1-100的五种方法

    "C#用两个线程交替打印1-100的五种方法"是.NET工程师面试多线程常考的试题之一,主要考察对C#语法和对多线程的熟悉程度。本文将用5种方法实现这个面试题。
方法1:使用Mutex或lock
    这种方法涉及使用Mutex或lock对象来同步两个线程。其中一个线程负责打印偶数,另一个线程负责打印奇数。线程在执行任务之前会锁定共享的Mutex或lock对象,以确保每个线程执行任务时只有一个线程能够访问共享资源。代码如下:
class Program{    static Mutex mutex = new Mutex();    static int count = 1;    static void Main(string[] args)    {      Thread t1 = new Thread(PrintOddNumbers);      Thread t2 = new Thread(PrintEvenNumbers);      t1.Start();      t2.Start();      t1.Join();      t2.Join();      Console.ReadLine();    }    static void PrintOddNumbers()    {      while (count
页: [1]
查看完整版本: 面试常考:C#用两个线程交替打印1-100的五种方法