线程池如何取线程去执行任务的?

后端进程中按任务分为多种不同的线程池。专门有一个接受任务的线程,这个线程与线程池之间有缓存队列,当有任务来时,按任务的类型存放到不同缓存中,当缓存中有任务时,会通过信号量通知线程池中的线程处理任务。这时线程池中当前没有空闲线程,该任务会留在缓存中等待被处理。正在被线程处理的任务需要设置超时时间,避免新的任务不能被处理。或者动态新增线程数目,等任务增长的速度慢了后,在将线程池中的数量回退到初始值。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容