惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Proofpoint News Feed
T
The Blog of Author Tim Ferriss
aimingoo的专栏
aimingoo的专栏
M
MIT News - Artificial intelligence
N
Netflix TechBlog - Medium
Y
Y Combinator Blog
B
Blog RSS Feed
H
Help Net Security
Blog — PlanetScale
Blog — PlanetScale
Vercel News
Vercel News
Google DeepMind News
Google DeepMind News
Microsoft Security Blog
Microsoft Security Blog
G
Google Developers Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 司徒正美
L
LangChain Blog
IT之家
IT之家
F
Fortinet All Blogs
V
V2EX
C
Check Point Blog
The Cloudflare Blog
博客园_首页
阮一峰的网络日志
阮一峰的网络日志
A
About on SuperTechFans

博客园 - bartholomew

new作为修饰符时的使用,以及接口的显式实现 关键词:应用程序扩展,通配符应用程序映射 Silverlight 2 Beta 1在Firefox下显示时的一点小问题~ Visual Studio也有调试禁区?! 关于SQL Server 2005的版本号 使用动态SQL的一点小技巧 通过本地IIS SMTP服务器发送邮件时提示“邮箱不可用”的解决办法 使用System.Net.Mail.SmtpClient发送邮件时出现的乱码问题 写代码的心情 在XP上安装SQL Server 2000、Visual studio .net 2003、Visual studio 2005、SQL Server 2005…… XPS M1210到了~~~~ 在dell的网上订购了XPS M1210,耐心等待中…… 对PropertyGrid控件中PropertyValueChanged事件的探讨 关于邮件群发 Dotnet中强行关闭多线程应用程序的所有线程 工作之余,自省~ 创建某控件的线程之外的其他线程试图调用该控件引发的问题 古怪的ConfigurationManager类 多线程编程中Join与WaitOne的区别
关于Dotnet中的线程池
bartholomew · 2006-10-28 · via 博客园 - bartholomew

线程池在应用程序资源的调配与处理上,做了一些优化,如果只是需要简单的多开几个线程来同时处理数据,而且每个线程的执行时间都很短,用线程池是一个不错的选择。

但是,如果每个子线程的执行时间很长,而总的需要处理的数据量很巨大,导致主线程又在不断的开启新的线程,个人感觉线程池不是一个很好的选择。

我 曾经有过这样的经历,感觉线程池用在这种情况下的话,一方面是速度好像总有一定的限制, 虽然可以更改线程池中的最大线程数,但总是不能自由的增加(当然是在硬件能够承受范围以内的),无法达到我想要的速度;另一方面我总怀疑是不是等待的线程 过多时,线程池会自动砍掉一些线程,造成数据的丢失(当然,只是怀疑)。

所以,我采用了自己控制线程数的办法,设定一个参数作为线程总数的上限值,当程序当前进程中的线程总数超过设定值的时候,则等待一段时间再开启新的线程。这样的话,速度是上去了,也未发现造成数据的丢失。

以上只是我个人的看法,仅供大家参考,大家有什么新的观点欢迎交流!我也会继续在实践中关注这方面的内容~