线程池
jdk自带的四种线程池(让线程循环使用不一直new浪费空间)
newCachedThreadPool:可缓存线程池,长度超过可灵活回收空闲线程,若无可回收,则新建线程。
newFixedThreadPool:定长线程池,超出的线程会在队列中等待。
newScheduledThreadPool:定长线程池,支持定时及周期性任务执行。
newSingleThreadExecutor:单线程化的线程池,唯一的工作线程,所有任务按照指定顺序执行。
参数
corePoolSize核心线程数:一般循环使用的线程
maximumPoolSize最大线程数量:高并发时候的最大可以创建的线程数
keepAliveTime空闲线程多长时间销毁
unit时间单位
workQueue任务队列
threadFactory线程工厂用于创建线程
handler拒绝策略