C# Task
2021-06-17 15:07
标签:reading 方法 接收 wait方法 tar 不用 获取 continue action Task是一种基于任务的编程模型。它与thread的主要区别是,它更加方便对线程进程调度和获取线程的执行结果。 Task类和thread类,前者接收的是Action委托类型,后者接收的是Func委托类型。 Task创建: (1)直接创建 var task1 = new Task(() =>{System.Threading.Thread.Sleep(1000);}); task1.Start(); (2)工厂创建 Task.Factory.StartNew(() = {}); (3)Run运行 Task.Run(() =>{}); 注: 开启新任务的方法:Task.Run()或者Task.Factory.StartNew(),开启的是后台线程 要在主线程中等待后台线程执行完毕,可以使用Wait方法(会以同步的方式来执行)。不用Wait则会以异步的方式来执行。 thread和Task的区别,thread new多少个就会创建多少个线程,而task是利用线程池中的线程。 Task其他方法: Task.Wait(); 阻塞当前线程 Task.WaitAll(); 阻赛当前线程 Task.WaitAny(); 阻塞当前线程直到有任意一个任务执行完毕 Task.ContinueWith(task=>{});执行完上一个任务后继续执行,并将上一个任务传递给下一个代码块。 C# Task 标签:reading 方法 接收 wait方法 tar 不用 获取 continue action 原文地址:https://www.cnblogs.com/xiaoerduo/p/10328019.html