# 1. 线程池任务排队时间与执行时间如何分开观测,队列深度上涨时应先调整 corePoolSize 还是队列容量 A 关停 B 无 C 调大 corePoolSize/maxPoolSize ✓ 正确答案 D 调队列容量
# 2. 用 PriorityBlockingQueue 作为 workQueue 时,高优先级任务在池饱和阶段为何仍可能被延迟,如何评估公平性代价 A 无 B 可能被拒绝或需等运行中任务完成 ✓ 正确答案 C 一定优先 D 抢占
# 5. ForkJoinTask.join() 在线程池饱和时是否会引发递归线程饥饿,如何用 ManagedBlocker 缓解 A 加锁 B 无 C 自旋 D ManagedBlocker ✓ 正确答案
# 7. JDK 25 中 Executors.newVirtualThreadPerTaskExecutor() 与传统平台线程池的并发模型差异 A 无 B 混合 C CPU 密集 D IO 密集(大量阻塞) ✓ 正确答案
# 9. 线程池队列使用 SynchronousQueue 与 LinkedBlockingQueue 在吞吐和背压上的差异,什么场景必须用 SynchronousQueue A PriorityQueue B SynchronousQueue ✓ 正确答案 C 无 D LinkedBlockingQueue
# 11. MDC/TraceId 等基于 ThreadLocal 的上下文为何不会自动传到线程池任务中,如何用装饰器或 TransmittableThreadLocal 透传 A TransmittableThreadLocal 或装饰器透传 ✓ 正确答案 B 静态变量 C 普通 ThreadLocal D 无
# 12. Tomcat 容器线程池与业务线程池为何要做隔离,业务池阻塞或耗尽时如何反向影响 HTTP 请求处理 A 无 B 无隔离 C 容器线程立即满 D 容器线程仍可接收请求,但请求等待业务池,RT 上升 ✓ 正确答案
# 14. 为线程池配置自定义 RejectedExecutionHandler 时,DB 限流场景下"调用方阻塞重试"与"CallerRunsPolicy"如何避免反向雪崩 A 加速 B 让提交线程执行任务,自然减速 ✓ 正确答案 C 丢弃任务 D 无
# 15. 线程池中任务抛出的异常与 rejected 任务分别记录在哪些位置,如何设计统一的失败追踪 A 线程内 B GC C 无 D RejectedExecutionHandler 中 ✓ 正确答案
# 20. 每个 Worker 持有一个 Thread 与一个 firstTask,引入可继承 ThreadLocal 在任务结束后未清理会产生什么后果 A 无 B 内存增长 C 更快 D 下一个任务读到脏数据(上下文串扰) ✓ 正确答案
# 21. 监控线程池的活跃线程数与队列长度时,哪些 Prometheus 指标(thread_pool_*)最直接反映系统瓶颈 A 内存 B 无 C 活跃线程接近 max 且队列持续增长 ✓ 正确答案 D 线程数
# 28. JDK 21 引入虚拟线程后,传统 ThreadPool 的"池大小 = CPU 数 + I/O 系数"经验公式在哪些场景下仍成立,哪些场景应彻底切换 A 仍适用 B 作废(虚拟线程无需池化) ✓ 正确答案 C 无 D 更复杂
# 31. 线程池与 Thread.UncaughtExceptionHandler 配合时,为什么任务内吞掉的异常不会触发 Handler,如何通过包装 Runnable 解决 A 无 B 延迟 C 触发 D 不触发(已被捕获) ✓ 正确答案
# 34. 线程池在 Spring TaskExecutor 中的配置 A Executors B ThreadPoolExecutor C 无 D ThreadPoolTaskExecutor ✓ 正确答案
# 37. 线程池的 Worker 模型在 setCorePoolSize 动态调整时的锁竞争与可见性如何保证 A 无 B synchronized C 原子 D mainLock(ReentrantLock) ✓ 正确答案
# 38. 线程池的 allowCoreThreadTimeOut 在 core 线程空闲超过 keepAliveTime 后被回收,对长生命周期任务池的设计取舍是什么 A 保持核心线程(false),避免频繁重建 ✓ 正确答案 B allowCoreThreadTimeOut=true C 回收 D 无
# 44. 线程池中任务导致 StackOverflowError 时该 Worker 线程会怎样,线程池如何继续服务其他任务 A 捕获后继续执行下一个任务 B 终止,线程池补充新线程继续服务 ✓ 正确答案 C 无 D 死锁
# 48. 线程池任务执行中的锁等待时间如何统计,JFR 的 jdk.JavaMonitorEnter 事件如何定位池内锁竞争 A 无 B jdk.GC C jdk.JavaMonitorEnter ✓ 正确答案 D jdk.ClassLoad
# 51. 线程池线程的 CPU 亲和性绑定(Thread Affinity)在 Java 中的可行性,虚拟线程下为何不再适用 A 无 B 必须 C 可行 D 不适用(虚拟线程在载体间迁移) ✓ 正确答案
# 52. AbstractExecutorService 的 submit 默认实现 A Runnable B Callable C FutureTask(RunnableFuture) ✓ 正确答案 D 无
# 57. 线程池的线程数调整在 Kubernetes 容器 CPU 限额下的实践,可用处理器数如何被容器感知并影响默认并行度 A 容器 CPU 配额(容器感知) ✓ 正确答案 B 无 C 内存 D 宿主机核数
# 60. ForkJoinPool 在 JDK 21+ 中支持虚拟线程模式后,CPU-bound 任务与 I/O-bound 任务的并行策略是否有本质变化 A 更并行 B 仍受核数限制,无本质变化 ✓ 正确答案 C 无 D 无限
# 62. ForkJoinPool 工作窃取(Work-Stealing)在多核 CPU 与 NUMA 架构下的性能特征 A 省内存 B 跨节点窃取导致远程内存访问延迟 ✓ 正确答案 C 无 D 更快
# 64. ForkJoinTask 的 fork/join 与 RecursiveTask/RecursiveAction A RecursiveAction B 无 C RecursiveTask ✓ 正确答案 D Runnable
# 71. 线程池与 CompletableFuture 默认池混用时的资源竞争,为何建议显式指定 Executor A 更快 B 自动隔离 C 拖累所有使用 commonPool 的任务 ✓ 正确答案 D 无
# 80. ScheduledExecutorService.scheduleAtFixedRate 与 scheduleWithFixedDelay A scheduleWithFixedDelay ✓ 正确答案 B scheduleAtFixedRate C 无 D 任意
# 81. 线程池任务的批量结果收集,invokeAll 与 Stream 并行在异常处理与超时上的差异 A 无 B invokeAll(timeout) ✓ 正确答案 C 任意 D Stream 并行
# 85. ThreadPoolExecutor 的扩展点(beforeExecute/afterExecute) A 任务内 B beforeExecute/afterExecute 扩展点 ✓ 正确答案 C 静态 D 无
# 87. 线程池任务的超时中断与 CompletableFuture.orTimeout 的协作,超时后任务仍在执行如何治理 A 无 B 阻塞 C 自动停止 D 仍执行,需 cancel/中断协作停止 ✓ 正确答案
# 89. orTimeout/completeOnTimeout(JDK 9+)在异步任务超时控制上的工程价值 A 无 B completeOnTimeout ✓ 正确答案 C 任意 D orTimeout
# 90. shutdown 与 shutdownNow 的差异如何在批处理与交互式服务中分别选择 A 任意 B shutdownNow C shutdown + awaitTermination ✓ 正确答案 D 无
# 98. JDK 25 虚拟线程调度器与平台线程调度器在 I/O 密集场景下的上下文切换开销与吞吐差异 A 轻量卸载(continuation),开销小 ✓ 正确答案 B OS 切换 C 更重 D 无
# 100. JDK 25 中虚拟线程池与 StructuredTaskScope(JEP 505,5th Preview)的协作与边界 A 互斥 B 相同 C 互补(SScope 编排,虚拟线程执行) ✓ 正确答案 D 无关
# 103. 对于 ThreadPoolExecutor 的 RejectedExecutionHandler,AbortPolicy 默认抛 RejectedExecutionException 在异步消息消费链中如何避免消费阻塞 A 捕获后进重试/死信队列 ✓ 正确答案 B 阻塞 C 丢弃 D 无
# 106. JDK 25 中 LinkedTransferQueue 的 transfer 与 put/add 在生产者阻塞语义上的差异 A 无 B 相同 C transfer 阻塞直到消费者接住,put 不阻塞 ✓ 正确答案 D put 更严格
# 112. JEP 505 Structured Concurrency(5th Preview,JDK 25) A 无 B 回调 C 阻塞 D 作用域管理任务生命周期、异常聚合、级联取消 ✓ 正确答案