猿问

C# 请问这句话怎么理解..(关于线程池)

"有时候排在队列中的其中一个或多个应用程序工作时间超过了规定的每个应用程序的排队时间,那么线程池不会坐视不管,线程池会创建一个新的线程来帮助另一个需要执行的应用程序".

 

1,应用程序工作时间就是应用程序执行时间吗?应用程序没有执行时,线程池是怎么知道工作时间会大于排除时间的?

 

2,什么是每个应用程序的排队时间?计算是程序之间先后执行顺序所需要的时间呢还是计算程序内部线程执行顺序所需要的时间?

 

谢谢指导!


郎朗坤
浏览 641回答 2
2回答

慕斯王

线程池不会来一个线程请求就会去开启一个线程,会让其先排队(如:规定它最多只能排1秒)。如果有其它线程执行超过1秒还没结束,线程池就会创建一个线程去执行,相反其它线程都很快执行完了就不需要创建多余的纯种了,一个线程就可以完成。

神不在的星期二

线程的创建和销毁都是需要很多的开销的,所有就有了线程池的概念。就好像你去银行办事,人不多的时候开2个窗口来办理就行了,但是如果人多的时候,那就需要开新的窗口来办理
随时随地看视频慕课网APP
我要回答