1

我在几个博客中读到,我们应该为长时间运行或阻塞任务创建自己的线程,而不是从线程池中消耗。

我的问题:如果我将 setmaxthreads 设置为 250 并且我有 25 个长时间运行的任务,我还应该创建自己的线程吗?我还有其他小任务的剩余线程。

4

1 回答 1

3

如果它们是长时间运行的任务,则根本不应该使用 ThreadPool。你真的不应该通常调整线程池设置;当然不能避免这种情况。请注意,线程池大小受到限制是有原因的;一次运行太多线程也是一件坏事。

所以,让 ThreadPool 做它应该做的事情,并为你的长时间运行的任务创建你自己的线程。(假设您没有创建数十个或数百个这些;在这种情况下,您会遇到不同的问题)

于 2012-10-05T02:59:22.247 回答