- 1
- 0
- 约4.92千字
- 约 7页
- 2026-09-03 发布于河北
- 举报
多线程程序员面试真题及详细答案(实战接地气版)
一、基础概念篇(入门必问)
1.进程和线程的区别?项目里你怎么理解?
参考答案:
首先进程是操作系统资源分配的最小单位,线程是CPU调度的最小单位。
一个进程里可以包含多个线程,多个线程共享进程的堆内存、方法区资源,但是每个线程有自己独立的栈内存、程序计数器、本地变量表。
从工程角度来说:进程之间完全隔离,互相不共享数据,通信成本极高;线程同属一个进程,数据共享方便、切换开销小,所以我们业务开发基本都是用多线程,不会多进程。
简单总结:进程独立占资源,线程共享资源;进程开销大、切换慢,线程开销小、切换快。
2.并行和并发有什么区别?
参考答案:
并发:多个任务交替执行,同一时刻只有一个任务在跑,CPU快速切换轮转,看起来像是同时执行,单核CPU只能实现并发。比如秒杀接口,大量请求轮流被处理。
并行:多个任务同一时刻真正同时执行,需要多核CPU支持。比如多核心同时跑多个计算任务。
通俗理解:并发是交替做,并行是一起做。日常开发中我们说的高并发,大部分是并发场景,不是并行。
3.线程的生命周期有哪些状态?分别什么时候触发?
参考答案:
Java线程一共6种状态,不是网上说的5种:
1.NEW(新建):newThread之后,还没调用start(),线程未启动。
2.RUNNABLE(就绪+运行):调用start()后进入就绪
您可能关注的文档
最近下载
- 长鑫存储数据手册DDR4_RDIMM_CXMQ3A4MA4GR7-CJ1-A.pdf VIP
- 暨南大学实验室安全考试医学生物类安全学习试题库及答案.docx
- 《ISO 37001-2025反贿赂管理体系要求及使用指南》专业深度解读和应用培训指导材料之8:10改进(雷泽佳编制-2025A1).pdf VIP
- M_ONE_XL效果器操作说明书.pdf VIP
- 安徽大学《高等数学(II)》2025 - 2026学年第一学期期末试卷.docx VIP
- 西师版六年级上册数学 分数乘整数 表格式教案.docx VIP
- 75种K线组合1览、图解.pdf VIP
- 2025年法官入额遴选政治理论真题及答案.docx VIP
- 广东省广州市2025届高三上学期8月摸底考试 化学(B卷) PDF版含答案.pdf VIP
- 数据库原理及应用教学导案(北京联合大学优秀教学导案).doc VIP
原创力文档

文档评论(0)