Java面试被问线程池,答对这5点就够了
线程池是Java并发编程的核心也是面试中几乎必问的考点。很多人能背出七大参数却说不清执行流程、拒绝策略和调优思路。其实面试官想考察的无非是这5个关键点答对了基本就能过关。第1点七大参数与执行流程线程池的核心构造参数有七个corePoolSize核心线程数、maximumPoolSize最大线程数、keepAliveTime空闲存活时间、unit时间单位、workQueue工作队列、threadFactory线程工厂、handler拒绝策略。执行流程是面试必问提交任务时若当前线程数小于核心线程数直接创建核心线程执行若核心线程已满任务进入工作队列若队列已满且线程数小于最大线程数创建非核心线程若线程数达到最大且队列也满触发拒绝策略。关键点核心线程默认不会回收除非设置allowCoreThreadTimeOut(true)。非核心线程空闲超过keepAliveTime后销毁。第2点四种拒绝策略及选择当线程池无法接收新任务时由拒绝策略处理。JDK提供四种AbortPolicy默认抛出RejectedExecutionException调用方需捕获处理适合关键业务。CallerRunsPolicy由提交任务的线程自己执行能降低提交速度形成负反馈适合不允许丢任务的场景。DiscardPolicy静默丢弃不抛异常风险高仅适合无关紧要的任务。DiscardOldestPolicy丢弃队列中最旧的任务再尝试提交可能丢失重要任务。面试加分实际项目中建议自定义拒绝策略记录日志并报警避免任务无声丢失。第3点线程池状态与关闭线程池有五种状态RUNNING、SHUTDOWN、STOP、TIDYING、TERMINATED。状态流转是理解关闭行为的关键。shutdown()状态变为SHUTDOWN不再接收新任务但会执行完队列中已有任务。shutdownNow()状态变为STOP不再接收新任务尝试中断正在执行的任务并返回队列中未执行的任务列表。注意shutdownNow()不保证立即停止需要任务响应中断。生产环境关闭线程池时通常先shutdown()等待一段时间后再shutdownNow()并配合awaitTermination。第4点线程数设置与队列选择线程数设置没有银弹取决于任务类型CPU密集型线程数 ≈ CPU核数 1减少上下文切换。IO密集型线程数 ≈ CPU核数 × (1 平均等待时间/平均计算时间)通常可设为核数的2倍以上。队列选择同样关键。LinkedBlockingQueue默认无界容易堆积任务导致OOMArrayBlockingQueue有界更安全SynchronousQueue不存储任务直接移交适合高吞吐场景。最佳实践使用有界队列并配合合理的拒绝策略防止资源耗尽。第5点异常处理与监控execute()提交的任务若抛出异常会直接打印到控制台且线程可能终止submit()会捕获异常并封装到Future中只有调用get()才会抛出。因此推荐使用submit()并处理Future或在任务内部用try-catch兜底。监控方面关注核心指标活跃线程数、队列大小、已完成任务数、拒绝任务数。可通过ThreadPoolExecutor的getter方法获取并接入Micrometer或Prometheus。自定义ThreadFactory给线程命名便于排查问题。总结面试回答线程池按这5点展开即可参数与流程、拒绝策略、状态与关闭、线程数与队列、异常与监控。如果能结合业务场景说明选型理由比如“订单系统用CallerRunsPolicy保证不丢单”就能让面试官看到你的实战经验。线程池不是配置完就万事大吉持续监控和动态调优才是高手与普通人的分水岭。

相关新闻

月薪30K的Python开发者,都在偷偷学这些底层原理

月薪30K的Python开发者,都在偷偷学这些底层原理

GIL不是锁,是历史的选择全局解释器锁让无数Python多线程新手撞墙。你以为开了四个线程,CPU就能四倍出力,结果它们排队等一把锁。不懂GIL,多线程就是一场幻觉。 它诞生于CPython早期,为简化内存管理和C扩展兼容性而设。…

2026/10/1 14:36:13 阅读更多 →
Python局域网聊天程序开发:socket编程与TCP三次握手实战指南

Python局域网聊天程序开发:socket编程与TCP三次握手实战指南

简介:这份计算机网络课设资料以P2P(点对点)技术为核心,完整呈现局域网聊天程序的设计与实现过程,面向计算机及相关专业的学生,可用于课程设计、毕业设计或Socket编程入门参考。文档围绕需求分析、总体设计、…

2026/10/1 11:34:29 阅读更多 →
从赵灵儿的五气朝元,看 ABAP 如何让一组业务对象恢复运转

从赵灵儿的五气朝元,看 ABAP 如何让一组业务对象恢复运转

仓库已经补录了库存,销售订单却仍然停在交付冻结状态。这种情况在企业系统里并不少见。订单能否继续履约,往往还取决于信用状态、价格、主数据和后续交付条件。修好其中一处,业务未必就能走通。直到几处关键状态重新协调,整张订单才像恢复了元气。 这与赵灵儿的五气朝元有…

2026/10/1 11:36:40 阅读更多 →

最新新闻

OpenClaw Windows 搭建教程:从 WSL2 到 PowerShell 的完整配置流程

OpenClaw Windows 搭建教程:从 WSL2 到 PowerShell 的完整配置流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/1 14:35:53 阅读更多 →
图片被WPS截胡还卡打印?三步夺回默认关联与打印通道

图片被WPS截胡还卡打印?三步夺回默认关联与打印通道

打开一张图片想打印,结果WPS直接弹窗告诉你:需要会员。更要命的是,你根本没想用WPS看图——它自己把你的默认打开方式接管了,双击任意一张照片,出来的永远是那个带着各种付费指引的界面。这情况我身边不下三个人遇到过…

2026/10/1 14:35:53 阅读更多 →
CrossFormer实战:跨尺度注意力图像分类微调指南

CrossFormer实战:跨尺度注意力图像分类微调指南

简介:这份资源面向希望上手视觉Transformer的开发者与图像分类学习者,围绕CrossFormer这一引入跨尺度注意力机制的新型架构,提供从模型实现到分类任务落地的完整实战素材。压缩包共2000个文件,约835.34MB,其中1986个pn…

2026/10/1 14:35:53 阅读更多 →
西数加密移动硬盘突然无法解密?从两层锁机制到实操自救

西数加密移动硬盘突然无法解密?从两层锁机制到实操自救

西部数据的加密移动硬盘突然打不开了,输入密码提示错误,但软件里的“删除密码”按钮还亮着,这种“活见鬼”的状态,我这几年收到的求助没有一百也有八十。用户描述基本都是同一套:My Passport或者My Book插上电&#xf…

2026/10/1 14:35:53 阅读更多 →
VC++ UDP Demo 实战:从 Winsock 编程到丢包排查与性能优化

VC++ UDP Demo 实战:从 Winsock 编程到丢包排查与性能优化

简介:这是一份面向VC初学者与网络编程入门者的UDP通信演示工程,围绕Windows平台Winsock套接字展开,帮助读者理解无连接传输协议的基本用法。资源以客户端与服务器双端示例为核心,覆盖WSAStartup初始化、socket创建、sockaddr_in地…

2026/10/1 14:35:53 阅读更多 →
意识量子观察者的本体、内外时空结构| 赵杰 | 量子感知论

意识量子观察者的本体、内外时空结构| 赵杰 | 量子感知论

作者:赵杰 清华大学硕士、微美全息云科技(NASDAQ:WIMI)董事长、微算法科技(NASDAQ:MLGO)董事长、育杰奖学金创始人 基础公理体系(本套推演的逻辑基石) 公理1:爱子是最基础的意识‑观察者单元。爱子不等同电子、光子这类物质量子;物…

2026/10/1 14:34:53 阅读更多 →

日新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/1 0:00:30 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/1 0:00:30 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/1 1:01:17 阅读更多 →

周新闻

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解 【免费下载链接】spirula-studio Cross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA. 项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studio Sp…

2026/9/30 13:14:22 阅读更多 →
SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南 模板网站太丑不够用?别急着加滤镜,那是治标不治本。很多老板盯着后台流量掉得眼红,却还在纠结首页Banner的圆角是不是3像素。这就像穿着西装去挖土,姿势不对,努力白费。我整理这份 速查手册…

2026/9/30 18:13:06 阅读更多 →
FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏

FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏

FireRed-OpenStoryline少样本仿写深度解析:AI Agent如何复刻你的独特文案风格与节奏 【免费下载链接】FireRed-OpenStoryline FireRed-OpenStoryline is an AI video editing agent that transforms manual editing into intention-driven directing through natural language …

2026/9/30 13:14:49 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/1 0:00:30 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/1 0:00:30 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/1 1:01:17 阅读更多 →