Thread vs ThreadPool - .Net 2.0

时间:2010-04-20 13:33:54

标签: .net multithreading threadpool

我无法理解Thread与ThreadPool之间的区别。考虑我要使用线程操纵50,000条记录。

如果是线程,我需要预定义没有线程或每个线程没有记录。它们中的任何一个都必须是恒定的。

在线程池的情况下,我们不需要在理论上设置它们中的任何一个。但实际上我们需要为每个线程分配记录数,因为如果输入的记录数量很大,则线程数量可能会变得非常大。

对此有何见解?

2 个答案:

答案 0 :(得分:2)

这是对Threads和ThreadPools的完整处理,它将回答您的问题。包括何时使用一个与另一个。

http://www.yoda.arachsys.com/csharp/threads/

答案 1 :(得分:1)

创建和销毁线程需要付出巨大的代价。线程池通过为您维护开放线程来消除此问题。当池中的线程完成其工作时,线程将返回池而不是被销毁。然后,当您必须完成更多工作时,已从池中取出已打开的线程。这样效率更高。