线程高频面试题及详细答案(实战口语版).docxVIP

  • 0
  • 0
  • 约5.82千字
  • 约 8页
  • 2026-11-14 发布于河北
  • 举报

线程高频面试题及详细答案(实战口语版).docx

线程高频面试题及详细答案(实战口语版)

1、什么是线程?线程和进程的区别是什么?

详细答案:

线程是进程内的最小执行单元,是操作系统能够调度的最小单位,一个进程可以包含多个线程,这些线程共享进程的内存资源。

进程是资源分配的最小单位,线程是调度执行的最小单位,核心区别主要有四点:

1)资源占用不同:进程独立占用内存、CPU资源,彼此完全隔离;线程共享所在进程的堆内存、全局变量、文件句柄等资源,仅私有栈内存和程序计数器。

2)开销不同:创建、销毁进程的开销极大,需要重新分配系统资源;线程创建和销毁开销很小,效率更高。

3)通信方式不同:进程间通信复杂,需要管道、Socket、共享内存等专门机制;线程间直接读写共享变量即可通信,简单高效,但也会带来线程安全问题。

4)独立性不同:一个进程崩溃不会影响其他进程;一个线程异常崩溃,会直接导致整个进程挂掉,所有线程都终止。

口语总结:进程是独立的程序,线程是程序里的干活分支,多线程就是一个程序同时干多件事。

2、多线程的优缺点是什么?实际项目中什么场景用?

详细答案:

优点:

1)充分利用CPU多核资源,避免CPU空闲,提升程序整体执行效率;

2)阻塞场景下提升响应速度,比如接口等待数据库、网络请求时,其他线程可以继续处理任务,不会整体卡死;

3)资源开销小,相比多进程部署,多线程更节省系统内存和CPU资源。

缺点:

1)存在线程安全问题,

文档评论(0)

1亿VIP精品文档

相关文档