进程、线程的关系
开工厂生产手机,制作一条生产线,这个生产线上有很多的器件以及材料。一条生产线就是一个进程。
只有生产线是不够的,使用找五个工人来进行生产,这个工人能够利用这些材料最终一步步的将手机做出来,这五个工人就是五个线程。
为了提高生产率,有两种办法:
一条生产线上多招些工人,一起生产手机,这些效率是成倍增长,即单进程多线程方式。
多条生产线,每个生产线上多个工人,即多进程多线程。
线程是程序执行的最小单位,而进程是操作系统分配资源的最小单位。
一个进程由一个或多个线程组成,线程是一个进程中代码的不同执行路线。
进程之间相互独立,但同一进程下的各个线程之间共享程序的内存空间(包括代码段、数据集、堆等)及一些进程级的资源(如打开文件和信号),某进程内的线程在其它进程不可见。
调度和切换:线程上下文切换比进程上下文切换要快得多。