菜鸟学编程-一个自学入门网站菜鸟学编程-一个自学入门网站菜鸟学编程-一个自学入门网站

ThreadPoolExecutor是如何同时维护线程和执行任务的

线程池在内部实际上构建了一个生产者消费者模型,将线程和任务两者解耦,并不直接关联,从而良好的缓冲任务,复用线程。线程池的运行主要分成两部分:任务管理、线程管理。任务管理部分充当生产者的角色,当任务提交后,线程池会判断该任务后续的流转:(1)直接申请线程执行该任务;(2)缓冲到队列中等待线程执行;(3)拒绝该任务。线程管理部分是消费者,它们被统一维护在线程池内,根据任务请求进行线程的分配,当线程执行完任务后则会继续获取新的任务去执行,最终当线程获取不到任务的时候,线程就会被回收。

未经允许不得转载:菜鸟学编程-一个自学入门网站 » ThreadPoolExecutor是如何同时维护线程和执行任务的