为什么要引入线程?
- 2022 年 7 月 20 日
- 筆記
为什么要引入线程?
假设不使用线程,把进程作为资源分配和调度的基本单位,则需要花费很多时间在IO上,浪费了宝贵的cpu资源。
因此我们引入线程,从此,进程是资源分配的基本单位,线程是系统资源调度和执行的基本单位。每个线程拥有独立的运行栈和程序计数器(pc),同一个进程下的线程共享相同的内存单元/内存地址空间,所以线程切换的开销小。
但是,引入线程后,多个线程操作共享的系统资源可能会带来安全的隐患。(线程安全问题)
假设不使用线程,把进程作为资源分配和调度的基本单位,则需要花费很多时间在IO上,浪费了宝贵的cpu资源。
因此我们引入线程,从此,进程是资源分配的基本单位,线程是系统资源调度和执行的基本单位。每个线程拥有独立的运行栈和程序计数器(pc),同一个进程下的线程共享相同的内存单元/内存地址空间,所以线程切换的开销小。
但是,引入线程后,多个线程操作共享的系统资源可能会带来安全的隐患。(线程安全问题)