malaikuangren

What is the purpose or drive to build thing like (xxx),How can it achieve the original goal of design?

2011年12月4日

.NET ThreadPool的重大变化

摘要: 在.NET 2.0 SP 1随着.NET 3.5发布后线程池发生了重大的变化。不过据Michael C. Kennedy发现,并非所有的改变都是最合适的。第一个变化是将最大线程数从每处理器25个线程增加至250个线程。这么做是为了处理线程池中的死锁,当太多线程等待其他任务结束时就会出现死锁。一旦所有25个线程都被阻塞的时候,等待中的任务就无法分配到线程了。尽管这个改变无法彻底排除死锁的可能性,但是发生问题的概率大大减小的。另一个改变其实是一个Bug。一般来说.NET会尽快在线程池中分配最少数量的线程,接着每秒钟创建最多2个线程,直到达到最大线程数量。如果您知道您的应用程序会立即使用大量线程池的 阅读全文

posted @ 2011-12-04 21:24 malaikuangren 阅读(237) 评论(0) 推荐(0) 编辑
关于ThreadPool.RegisterWaitForSingleObject和WaitHandle的应用介绍

摘要: 最近在学习线程相关的内容,所以把学习过程中的心得记录下来,相信大家常用 ThreadPool.QueueUserWorkItem()或者Thread thd=new Thread(new ThreadStart(test)))但是应该很少人知道用ThreadPool.RegisterWaitForSingleObject(高手除外啦),我也是最近才知道。让我来给各位看官解释一下它的用法吧,首先我们看一下它的原型:publicstaticRegisteredWaitHandleRegisterWaitForSingleObject(WaitHandlewaitObject,WaitOrTimer 阅读全文

posted @ 2011-12-04 21:16 malaikuangren 阅读(268) 评论(0) 推荐(0) 编辑
Programming the Thread Pool in the .NET Framework

摘要: David CarmonaPremier Support for DevelopersMicrosoft SpainJune 2002Summary:Provides an in-depth look at the thread pool support in the Microsoft .NET Framework, shows why you need a pool and the implementation provided in .NET, and includes a complete reference for its use in your applications. (25 阅读全文

posted @ 2011-12-04 21:15 malaikuangren 阅读(702) 评论(0) 推荐(1) 编辑