定义
进程:指程序的一次执行(周期),是操作系统资源分配的基本单位
线程:是进程中执行运算的最小单位,是系统调度的最小单位
关系
进程和线程是存在包含关系的,进程是线程的容器,一个线程归属于一个进程,一个进程可以有一个或多个线程
没有线程的进程可以看做是单线程的
区别
每一个进程拥有独立的地址空间,拥有自己的一整套变量,而线程包含在进程的地址空间中,相同地址空间的线程共享数据
与进程相比,线程可以看做一种轻量级的进程,创建或者撤销一个线程所需开销要比创建进程的开销小的多
每个进程之间是相互独立的,进程间的切换会有较大的开销,而线程(同一进程中)间共享数据,线程间的切换开销较小