谈谈Java的线程池
本文主要讲述了使用线程池的好处,Executors创建的五种线程池特点,简单介绍了Fork/Join框架。围绕Executor框架展开,阐述了线程池的工作流程,探讨了ThreadPoolExecutor的全部构造参数和意义,以及阿里巴巴不推荐使用Executors创建线程池的原因,另外,介绍了我们应该怎么样合理的创建线程池,对于CPU密集型和IO密集型以及混合型的创建方式。探讨了新任务提交后的执行流程,另外简单画了一下线程池生命周期图。
Java中的线程池是运用场景最多的并发框架,几乎所有需要异步或者并发执行任务的程序都可以使用线程池。开发 中使用线程池的三个优点如下: 1、降低资源消耗:通过重复利用已创建的线程降低线程创建和销毁带来的消耗。 2、提高响应速度:当任务到达时,任务可以不需要等待线程创建就能立即执行。 3、提高线程的可管理性:使用线程池可以统一进行线程分配、调度和监控。