线程池内的核心参数有7个分别是:
核心线程数(corePoolSize):线程池内常驻的核心线程数
最大线程数(maximumPoolSize):线程池能容纳同时执行的最大线程数
空闲存活时间(keepAliveTime):多余的空闲线程存活时间
时间单位(unit):空闲存活时间的时间单位
任务队列(workQueue):被提交但尚未执行的任务
线程工厂(threadFactory):生成线程池中的工作线程的线程工厂,可以定制线程对象的创建,比如线程名字,是否守护线程等
拒绝策略(handler):当队列满了并且工作线程超出线程池的最大线程数时,会触发拒绝策略,
扩展:当触发拒绝策略时,有四种策略:
ThreadPoolExecutor.AbortPolicy:丢弃任务并抛出RejectedExecutionException异常
ThreadPoolExecutor.DiscardPolicy:丢弃任务,但不抛异常。
ThreadPoolExecutor.DiscardOldestPolicy:丢弃队列最前面的任务,然后重新提交被拒绝的任务
ThreadPoolExecutor.CallerRunsPolicy:由调用线程(提交任务的线程)处理该任务
关注博主!!!!其他面试题都是纯干货,无废话版哦