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
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP