线程与进程的区别?
- 概念
- 进程是操作系统资源分配的基本单位
- 线程是CPU调度和分配的基本单位
- 包含关系
- 一个线程只属于一个进程,一个进程可以包含多个线程
- 内存分配
- 因为进程是操作系统资源分配的基本单位,所以系统不会给线程分配资源,线程的资源来自进程
- 线程没有自己的地址空间,所以会在进程的地址空间去运行。所有的线程共享进程的内存和资源
- 但是线程会有自己的
栈
、寄存器
- 开销
- 进程间的切换会有较大的开销
- 由于线程没有自己的地址空间,所以会在进程的地址空间去运行。所有的线程共享进程的内存和资源
- 每个线程拥有自己的栈和寄存器,所以线程间切换开销