2-1-5线程的概念和特点

线程的概念和特点

有的进程可能需要"同时"做很多事,而传统的进程只能串行的执行一系列程序,为此引入了"线程"来增加并发度。可以把线程理解为"轻量级进程"

引入线程机制后,有什么变化?

线程的概念和特点

  1. 引入线程前,进程既是资源分配的基本单位,也是调度的基本单位。引入线程后,进程是资源分配的基本单位,线程成为了调度的基本单位

  2. 引入线程之后,不仅是进程之间可以并发,进程内的各线程之间也可以并发,从而进一步提高了系统的并发度,使得一个进程内也可以并发处理各种任务

  3. 切换进程时,需要保存/恢复进程运行环境,还需要切换内存地址空间(更新快表、更新缓存),开销很大。同一进程内的各个线程间并发,不引起进程切换,不需要切换进程的运行环境和内存地址空间,省时省力。

进程间并发,开销很大。线程间并发,开销更小。引入线程机制后,并发带来系统开销降低,系统并发性提升

  1. 各个进程的内存地址空间相互独立,只能通过请求操作系统服务(CPU要切换到核心态)来完成进程间的通信,开销大。从属于同一进程下的各个线程共享进程拥有的资源,线程间的通信无需操作系统的干预(切换状态),可以直接通过读/写内存空间进行通信,开销更小

线程的属性

线程的概念和特点

  • 多CPU环境下,各个线程也可以分派到不同的CPU上并行地执行
  • 线程几乎不拥有资源,只拥有极少量的资源(线程控制块TCB、寄存器信息、堆栈等)
  • 线程也有运行态、就绪态、阻塞态

相关文章:

  • 2021-06-23
  • 2021-11-17
  • 2022-12-23
  • 2021-04-18
  • 2021-07-08
  • 2021-05-25
  • 2022-12-23
  • 2021-07-17
猜你喜欢
  • 2022-01-04
  • 2022-12-23
  • 2021-12-02
  • 2022-12-23
  • 2021-05-16
  • 2022-12-23
  • 2021-07-14
相关资源
相似解决方案