C#多线程和task
Posted 杰宇笔记
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#多线程和task相关的知识,希望对你有一定的参考价值。
在C#我们可以定义委托类型(delegate)来控制方法的运行,类似于C++的函数指针。同时我们可以使用.net 自带的action和func来方便地创建委托类型。
现在我来定义一个简单的委托。
我们知道invoke是一个简单的同步线程执行,如果要换成begininvoke可以启动另一个线程
这时候一切正常,但是当我们运行程序之后,却无法运行。
这表明我们的begininvoke已经不被支持了,要多线程执行代码必须采用新的方式,也就是我们接下来要介绍的task类型。
我们使用构造函数来制造一个task,构造一个task有三个方式,Task.Run,Start,TaskFactory.StartNew,在这里我们不在研究。
接着我们来介绍一下task的几个方法
1.Continuewith
我们可以使用continuewith来产生连续的任务,表示一个任务结束后才开始下一个任务
以上是关于C#多线程和task的主要内容,如果未能解决你的问题,请参考以下文章