进程,线程与协程区别和联系

!> 很多题目还没有完善,之后会慢慢补充并完善……

进程概念

进程:正在执行程序的一个实例,是资源分配的基本单位。(进程控制块(process control block)描述进程的基本信息和运行状态,所谓的创建和撤销进程,都是指对PCB的操作)

线程概念

线程:进程中的单条流向,是程序独立调度的基本单位。(线程控制块(process control block)描述线程的基本信息和运行状态,所谓的创建和撤销线程,都是指对TCB的操作)

协程概念

协程可以理解为用户态的线程,其实就是可以被暂停以及可以被恢复运行的函数。虽然线程也可以自己暂停和恢复,只不过线程的调度是操作系统实现的,这些对程序员都不可见,而协程是在用户态实现的,对程序员可见。这就是为什么有的人说可以把协程理解为用户态线程的原因。
参考

OS