Task
.NET4.0 后微软推荐的异步计算类型
为什么需要Task
- Thread 带来每次实例化,释放带来时空开销,使用不当导致线程过多,时间片切换。
- ThreadPool 控制能力弱(如thread的阻塞,取消,超时等由CLR控制Thread,不是开发者)
Task像是一个Thread,Task是在ThreadPool,Thread基础上的封装
Task启动
- New
- TaskFactory
- Task.Run
- New ,RunSynchronously(同步执行任务)
ThreadPoolTaskScheduler
带返回值的Task,Task<Result>
阻塞/延续
- Thread.Join
- Task.Wait
- Task.WaitAll,Task.WaitAny
- Task.Continue,Task.WhenAll.Continue,Task.WhenAny.Continue
- Task.Factory.ContinueWhenAll,Task.Factory.ContinueWhenAny

浙公网安备 33010602011771号