Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在几个博客中读到,我们应该为长时间运行或阻塞任务创建自己的线程,而不是从线程池中消耗。
我的问题:如果我将 setmaxthreads 设置为 250 并且我有 25 个长时间运行的任务,我还应该创建自己的线程吗?我还有其他小任务的剩余线程。
如果它们是长时间运行的任务,则根本不应该使用 ThreadPool。你真的不应该通常调整线程池设置;当然不能避免这种情况。请注意,线程池大小受到限制是有原因的;一次运行太多线程也是一件坏事。
所以,让 ThreadPool 做它应该做的事情,并为你的长时间运行的任务创建你自己的线程。(假设您没有创建数十个或数百个这些;在这种情况下,您会遇到不同的问题)