进程线程协程的区别

进程:

        保存在硬盘上的程序运行以后,会在内存空间里形成一个独立的内存体,这个内存体有自己独立的地址空间,有自己的堆,上级挂靠单位是操作系统。操作系统会以进程为单位,分配系统资源(CPU时间片、内存等资源),进程是资源分配的最小单位。

线程:

          线程又叫做轻量级进程,是操作系统调度,是CPU调度的最小单位。

        线程从属于进程,是程序的实际执行者。一个进程可以有多个线程,最少有一个线程,但一个线程只能有一个进程。

协程:

        协程,又称微线程,纤程;是一种比线程更加轻量级的存在

          线程的切换会保存到CPU的栈里,协程拥有自己的寄存器上下文和栈

        协程最主要的作用是在单线程的条件下实现并发的效果,但实际上还是串行的(像yield一样)

        一个线程可以拥有多个协程,协程不是被操作系统内核所管理,而完全是由程序所控制。

进程线程协程的区别_第1张图片

你可能感兴趣的:(python基础,p2p,网络协议,网络)