本文主要介绍进程和线程,包括:
- 进程
- 线程
- 区别
一、进程
进程的定义如下:
进程是程序在某个数据集合上的一次运行活动。
即进程(process)是一块包含了某些资源的内存区域。操作系统利用进程把它的工作划分为一些功能单元。
二、线程
线程是进程内的一个可执行单元,即一个进程可以包含多个线程,它是比进程粒度更小的一个执行单元,是CPU进行调度的基本单元。
线程本身不占有资源,在运行过程中只需要很小的一部分系统开销,但是一个进程内的多个线程可以共享该进程的所有资源。
三、区别
1. 调度角度
线程是CPU进行调度的最小单元。
2. 资源占用角度
进程是拥有资源的基本单位,不同进程之间不可以共享资源。
线程不占有资源,但一个进程内的所有线程可以共享进程内的资源。
3. 并发性角度
进程之间可以并发执行。
一个进程内的多个线程也可以并发执行。
4. 系统开销角度
创建和销毁进程的时候,系统要分配和回收资源。
线程本身不占有资源,在运行过程中只需要很小的一部分系统开销。
所以进程的系统开销大于线程。