一,基本概念
进程:进程是系统资源分配及调度的独立单位,也是系统中并发执行的单位。
线程:线程是进程的一个实体,也是CPU调度与分派的基本单位,它是比进程更小的能独立运行的基本单位。
二,两者区别
1.进程是资源分配的最小单位,而线程是 CPU 调度的最小单位;
2.创建进程或撤销进程,系统都要为之分配或回收资源,操作系统开销远大于创建或撤销线程时的开销;
3.不同进程地址空间相互独立,同一进程内的线程共享同一地址空间;
4.一个进程的线程在另一个进程内是不可见的;
5.线程之间的通信更方便,同一进程下的线程共享全局变量等数据,而进程之间的通信需要以进程间通信(IPC)的方式进行;
6.多线程程序只要有一个线程崩溃,整个程序就崩溃了,但多进程程序中一个进程崩溃并不会对其它进程造成影响,因为进程有自己的独立地址空间,因此多进程更加健壮。