线程池的7大核心参数包括:
1.核心线程数(Core Pool Size):线程池中最小的线程数,即在线程池中一直保持的线程数量,不受空闲时间的影响。
2.最大线程数(最大池大小)
3.空闲线程存活时间(Keep Alive Time):当线程池中的线程数超过核心线程数时,多余的线程会被回收,此参数即为非核心线程的空闲时间,超过此时间将被回收。
4.工作队列(Work Queue):用于存储等待执行的任务的队列,当线程池中的线程数达到核心线程数时,新的任务将被加入工作队列等待执行。
5.拒绝策略(Reject Execution Handler):当线程池和工作队列都已经达到最大容量,无法再接收新的任务时,拒绝策略将被触发。常见的拒绝策略有抛出异常、直接丢弃任务、丢弃队列中最老的任务等。
6.线程工厂 (Thread Factory):用于创建新的线程,可定制线程名字、线程组、优先级等。
7.阻塞策略(Block Policy):当工作队列已满时,向线程池中添加任务的策略。常见的策略有:直接抛出异常、阻塞调用者、丢弃任务等。
这些参数可以通过线程池的构造方法来设置,根据应用场景的不同,需要根据实际情况进行调整。