c# print多线程打印

   2024-09-30 4810
核心提示:在C#中,如果你想在多线程环境下打印,可以使用Parallel类或者Task类。这里有两个例子展示如何使用这两种方法实现多线程打印。例

在C#中,如果你想在多线程环境下打印,可以使用Parallel类或者Task类。这里有两个例子展示如何使用这两种方法实现多线程打印。

例1:使用Parallel类

using System;using System.Threading.Tasks;class Program{    static void Main()    {        int numberOfThreads = 5;        Parallel.For(0, numberOfThreads, i =>        {            PrintNumber(i);        });    }    static void PrintNumber(int number)    {        Console.WriteLine($"Thread {Environment.CurrentManagedThreadId()} - Number: {number}");    }}

例2:使用Task类

using System;using System.Threading.Tasks;class Program{    static async Task Main()    {        int numberOfThreads = 5;        await Task.WhenAll(Enumerable.Range(0, numberOfThreads).Select(i => PrintNumberAsync(i)));    }    static async Task PrintNumberAsync(int number)    {        await Task.Delay(100); // 模拟耗时操作        Console.WriteLine($"Thread {Environment.CurrentManagedThreadId()} - Number: {number}");    }}

在这两个例子中,我们都创建了5个线程来并发地打印数字。第一个例子使用Parallel.For循环,第二个例子使用Task.WhenAll方法配合Enumerable.Range和Select来创建任务列表。注意,在第二个例子中,我们使用了async和await关键字来确保线程在执行PrintNumberAsync方法时不会阻塞主线程。

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

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