C# 中基于线程的并行性

王林
发布: 2023-09-11 16:09:02
转载
662 人浏览过

C# 中基于线程的并行性

在 C# 中,任务并行划分任务。然后将任务分配给单独的线程进行处理。在 .NET 中,您可以使用以下机制来并行运行代码:线程、线程池和任务。为了实现并行性,请使用 C# 中的任务而不是线程。

任务不会创建自己的操作系统线程,而是由 TaskScheduler 执行。

让我们看看如何创建任务。使用委托来启动任务 -

Task tsk = new Task(delegate { PrintMessage(); }); tsk.Start();
登录后复制

使用任务工厂启动任务 -

Task.Factory.StartNew(() => {Console.WriteLine("Welcome!"); });
登录后复制

您还可以使用 Lambda -

Task tsk = new Task( () => PrintMessage() ); tsk.Start();
登录后复制

启动任务的最基本方法是使用 run() -

示例

实时演示

using System; using System.Threading.Tasks; public class Example { public static void Main() { Task tsk = Task.Run(() => { int a = 0; for (a = 0; a <= 1000; a++) {} Console.WriteLine("{0} loop iterations ends", a); }); tsk.Wait(); } }
登录后复制

输出

1001 loop iterations ends
登录后复制

以上是C# 中基于线程的并行性的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!