# Java 线程池核心线程数在运行过程中能修改吗?如何修改?
8 min read
Java 线程池的核心线程数在运行过程中可以动态修改,这是通过 ThreadPoolExecutor 提供的 setCorePoolSize() 方法实现的,允许在不重启线程池的情况下调整其核心线程数量。
Java 线程池的核心线程数在运行过程中可以动态修改,这是通过 ThreadPoolExecutor 提供的 setCorePoolSize() 方法实现的,允许在不重启线程池的情况下调整其核心线程数量。
synchronized 是 Java 内置的、基于 JVM 实现的悲观锁机制,通过对象头中的 Mark Word 和 Monitor 对象来实现线程同步。
拒绝策略是当线程池的任务队列已满且工作线程数达到最大值时,用于处理新提交任务的兜底机制。
volatile 是 Java 提供的一种轻量级的同步机制,用于确保多线程环境下变量的可见性和禁止指令重排序,但不保证原子性。
HashMap 的扩容机制是指当 HashMap 中存储的键值对数量超过当前容量与负载因子的乘积时,会创建一个容量为原来两倍的新数组,并将所有现有元素重新计算哈希并分配到新数组中的过程。
ConcurrentHashMap 是 Java 并发包中线程安全的哈希表实现,1.7 版本采用分段锁(Segment)机制保证并发安全,而 1.8 版本则改为基于 CAS + synchronized 的细粒度锁优化。