码迷,mamicode.com
首页 > Windows程序 > 详细

C#使用Task创建任务

时间:2017-07-22 21:12:48      阅读:484      评论:0      收藏:0      [点我收藏+]

标签:构造   string   factory   阻塞   构造函数   主线程   使用   名称空间   创建   

.NET 4 中 包含了新名称空间System.Threading.Task。它包含的类抽象出了线程的功能。使用Task类创建的任务是后台线程,所以在前台线程全部终止的时候,如果任务还没有全部执行万,就会被被动终止。

启动任务

  怎样启动一个任务?代码中我们首先要添加using System.Threading.Tasks;引用。我们可以使用TaskFactory类或Task类的构造函数和Start()方法。在启动任务时,会创建Task类的一个实例。首先我们看一段代码
 

using System;
using System.Text;
using System.Threading.Tasks;
using System.Threading;
namespace ConsoleTask
{
    class Program
    {
        static void Main(string[] args)
        {
            //使用TaskFactory创建一个任务
            TaskFactory tf = new TaskFactory();
            Task t1 = tf.StartNew(NewTask);
            //使用Task类de Factory创建一个任务
            Task t2 = Task.Factory.StartNew(NewTask);
            ///////////////////////////////////////
            Task t3 = new Task(NewTask);
            t3.Start();
            Task t4 = new Task(NewTask, TaskCreationOptions.PreferFairness);
            t4.Start();
            Thread.Sleep(1000);//因为任务是后台线程,所以我们这里阻塞主线程一秒钟来等待任务全部执行完成
        }
        static void NewTask()
        {
            Console.WriteLine("开始一个任务");
            Console.WriteLine("Task id:{0}",Task.CurrentId);
            Console.WriteLine("任务执行完成");
        }
    }
}

 

C#使用Task创建任务

标签:构造   string   factory   阻塞   构造函数   主线程   使用   名称空间   创建   

原文地址:http://www.cnblogs.com/larva/p/Task.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!