进程和线程的区别
线程可以看作是轻量级的进程,一个进程中包含了多个线程,因此多个线程间可以共享进程资源。
如上图所示,堆和方法区是可以共享的区域,而程序计数器和栈是每个线程私有的。
描述进程与线程的区别主要考虑以下四个方面:
- 首先说明进程与线程之间的关系 : 进程中包含一条或多条线程;
- 第二从系统管理与分配资源和CPU调度的角度来分析:进程是系统分配资源的最小单位,线程是CPU调度的最小单位;
- 第三从资源使用角度来分析:进程之间不能共享资源,进程中的线程之间共享进程的所有资源;
- 单独介绍一下线程的特点:线程的创建、销毁、调度效率比进程更高,并且有自己独立的执行任务。