何时使用Task以及何时使用Thread?

时间:2012-03-15 20:27:16

标签: c#

我刚问过关于任务的问题,但意识到我其实想问一些更普遍的问题。 有人可以总结一下任务和线程的优缺点。 如何理解我应该使用Task还是Thread?

1 个答案:

答案 0 :(得分:5)

Task是一个以异步方式进行编程的命令。 Thread实际上是OS内核对象,执行请求的内容。考虑Task就像一个聪明的线程聚合器/组织者“知道”在CPU上运行当代的任务更好。它比多线程的常见实现更聪明(这就是为什么它建议选择微软)。这是一项功能,可以帮助您更轻松地管理Threads

另请参阅此Should i use ThreadPools or Task Parallel Library for IO-bound operations,可能会对您可能感兴趣的性能问题提供一些提示。