C#异步编程的实现方式(4)——Task任务
2015-07-14 15:07
375 查看
最基本的是知道怎么启动一个Task。
1、Task类构造函数
使用Task类的构造函数。实例化Task对象时,任务不会立即运行,而是指定Created状态。接着调用Task类的Start()方法来启动任务。使用Task类时,除了调用Start()方法,还可以调用RunSynchronously()方法。这样,任务也会启动,但是同时调用。默认情况下,任务是异步运行的。
Task类的构造函数接收一个无参无返回值的委托:
[/code]
下面是TaskMethod方法:
[/code]
方法里用Task.CurrentId属性取得当前任务ID。下面是主线程:
[/code]
如果要往线程里传递参数,Task构造函数提供的重载,可以传入一个object类型的参数:
[/code]
下面是带参的线程方法:
[/code]
2、TaskFactory类
使用实例化的TaskFactory类,在其中把TaskMethod方法传递给StartNew()方法,就会立即启动任务。
[/code]
3、Task.Factory属性
Task类提供了一个Factory静态属性,这个属性返回一个TaskFactory对象。
[/code]
1、Task类构造函数
使用Task类的构造函数。实例化Task对象时,任务不会立即运行,而是指定Created状态。接着调用Task类的Start()方法来启动任务。使用Task类时,除了调用Start()方法,还可以调用RunSynchronously()方法。这样,任务也会启动,但是同时调用。默认情况下,任务是异步运行的。
Task类的构造函数接收一个无参无返回值的委托:
[code]
[/code]
下面是TaskMethod方法:
[code]
[/code]
方法里用Task.CurrentId属性取得当前任务ID。下面是主线程:
[code]
[/code]
如果要往线程里传递参数,Task构造函数提供的重载,可以传入一个object类型的参数:
[code]
[/code]
下面是带参的线程方法:
[code]
[/code]
2、TaskFactory类
使用实例化的TaskFactory类,在其中把TaskMethod方法传递给StartNew()方法,就会立即启动任务。
[code]
[/code]
3、Task.Factory属性
Task类提供了一个Factory静态属性,这个属性返回一个TaskFactory对象。
[code]
[/code]
相关文章推荐
- C#比较两个数组的不同
- C#对多个集合和数组的操作(合并,去重,判断)
- C#高级编程三十八天----运算符
- [深入学习C#]C#实现多线程的方式:使用Parallel类
- C#基于两种需求向图片添加水印
- 使用C#+socket实现用移动设备控制的虚拟手柄
- 使用C#+socket实现用移动设备控制的虚拟手柄
- C#减少图片文件大小和尺寸(转)
- C# DataTable去除重复,极其简便、简单
- C#读取Excel数据两种方式性能对比
- C# 知识回顾 - 你真的懂异常(Exception)吗?
- C#获取文件的大小
- 使用C#读取文件流[转]
- C# 对文件操作
- C#中copy某目录下的所有的目录和文件到目的目录
- C#中使用自定义消息
- winfrom给word加水印
- 【C#】 一些不常用,很容易混淆的知识点
- combox绑定枚举和读取枚举
- C#读写txt文件的两种方法介绍