1. 进程是系统进行资源分配和调度的最小单位,是程序的一次执行过程;线程是程序执行(CPU 调度)的最小单位,是进程划分成的更小的运行单位。
2. 一个进程在执行时可产生多个线程,但一个线程只能有一个进程。
3. 线程和进程最大的不同在于,线程没有独立的地址空间,同类的线程共享同一块内存空间和一组系统资源,同时线程负担要比进程小的多,因此也被称为轻量级的进程;
而各个进程之间是独立的,有独立的地址空间,相互不影响,每个进程会占有某些系统资源如 CPU 时间、内存空间等;
4. 从另一角度来说,进程属于操作系统的范畴,同一段时间内,可以同时执行一个以上的程序,而线程则是在同一程序内几乎同时执行一个以上的程序段。