Welcome

首页 / 软件开发 / .NET编程技术 / .NET 4并行(多核)编程系列之二 从Task开始

.NET 4并行(多核)编程系列之二 从Task开始2012-02-13 博客园 小洋前言:我们一步步的从简单的开始讲述,还是沿用我一直的方式:慢慢演化,步步为营。

本篇文章的议题如下:

1.Task基础介绍

2.Task的创建

3.获取Task的执行结果

4. 补充细节

1.Task基础介绍

首先我们还是来看看一段简单的代码:

这里展示的只是一段简单的代码,不能显示出并行编程的特点。但是我们还是从最基本的开始看,慢慢进入深一点的话题。

如果你曾经用过.NET 中的多线程编程,比较一下,就会发现:这段代码虽然在底层还是使用了多线程,但是写法上却简化了很多,一行代码就实现了一个并行编程。

下面我们就从Task类开始谈。

Task类是Task Programming Library(TPL)中最核心的一个类,下面我将会像大家展示如何使用一些方法来创建不同类型的Task,

取消Task,等待Task执行完成,获取Task执行后的结果和对异常进行处理。

在开始讨论之前,我们首先快速的看看之前的代码:

这个命名空间将会是我们之后在讲述并行编程经常使用的一个。这个空间包含了很多与并行编程有关的类。

还有一个要你使用的命名空间是:System.Threading,大家对这个应该比较熟悉了,之前的多线程编程常常使用到,这个空间下包含了一些在并行编程中用来协调数据的一些类。

上面代码中,最主要的代码如下:

Task.Factory.StartNew(() =>
{
Console.WriteLine("Hello World");
});

我们用静态方法:Task.Factory.StartNew()来创建了一个最简单的Task--在屏幕上打印一句话。这段代码确实简单,而且都没有任何输入和需要返回的结果。