Java并发——线程池Executor框架
Java并发——线程池Executor框架 线程池 无限制的创建线程 若采用"为每个任务分配一个线程"的方式会存在一些缺陷,尤其是当需要创建大量线程时: 线程生命周期的开销非常高 资源消耗 稳定性 引入线程池 任务是一组逻辑工作单元,线程则是使任务异步执行的机制。当存在大量并发任务时,创建、销毁线程需要很大的开销,运用线程池可以大大减小开销。 Executor框架 说明: Executor 执行器接口,该接口定义执行Runnable任务的方式。 ExecutorService 该接口定义提供对Executor的服务。 ScheduledExecutorService 定时调度接口。 AbstractExecutorService 执行框架抽象类。 ThreadPoolExecutor JDK中线程池的具体实现。 Executors 线程池工厂类。 ThreadPoolExecutor 线程池类 线程池是一个复杂的任务调度工具,它涉及到任务、线程池等的生命周期问题。要配置一个线程池是比较复杂的,尤其是对于线程池的原理不是很清楚的情况下,很有可能配置的线程池不是较优的。 JDK中的线程池均由ThreadPoolExecutor类实现。其构造方法如下: 参数说明: corePoolSize:核心线程数。 maximumPoolSize:最大线程数。 keepAliveTime