井.Net 4,还有新的任务功能,我想知道如果我可以依靠它考勤记录Async/Await中.Net 4.5的一切,我想要异步执行还是有,我将不得不使用一个单独的某些情况下,方法(S) Thread,特别是我已经读过Task.Run使用a ThreadPool来异步执行该方法.
结论:是使用的组合Async/Await沿Tasks可以免费使用我的Threads?
如果指定TaskCreationOptions.LongRunning选项(还有一个等效的continuation),那么任务将不使用线程池线程,它将使用常规Thread.从技术上讲,这是一个实现细节,不在规范中,但依赖它并不是一个完全不合理的假设.
鉴于此,你应该能够使用Task你可以Thread直接做的事情做任何事情.
考虑到某人可能想Thread直接使用的主要情况是创建自己的并行库,假设您选择不在TPL之上构建它.虽然它在业务应用程序的上下文中并不重要,但在创建自己的库时,您可能需要访问特定Thread对象的底层细节,或者您可能希望避免使用的开销(很小)Tasks.
当然,如果您还没有使用.NET 4.0,则无法使用Task.
| 归档时间: |
|
| 查看次数: |
2021 次 |
| 最近记录: |