概念:
- **进程:**指程序在执行过程中分配和管理资源的基本单位。
- **线程:**指程序执行的最小单位,是进程的一个执行流。
关系:
- 一个进程由一个或者多个线程组成,同一个进程内部的所有线程共享
资源,不同的进程之间相互独立。举个例子:如果把进程看作金鱼缸,线程看作金鱼缸里面的金鱼,同一个金鱼缸里面的所有金鱼共享鱼缸里面的水资源,不同的金鱼缸之间是不共享水资源的; - 进程和线程都可以并发执行。
区别:
- 进程是资源分配和管理的最小单位,线程是程序执行的最小单位;
- 同一进程下的所有线程共享资源,各个进程之间相互独立;
- 进程之间进行切换时,消耗大,效率高,如果时需要频繁地切换时,使用线程由于进程,能减少资源的消耗;
- 进程比线程更加健壮,一个进程崩掉,在保护模式下不会对其他进程造成影响,但是一个线程崩掉之后,相对应的进程也会崩掉。