Skip to main content

关于协程的一些理解

· 2 min read
Czasg

以下场景均以单核 cpu 为例。

并发

逻辑上同时处理任务的能力。

cpu 在短时间内来回执行多个任务,使得这些任务看上去是同一时间进行的。
这种宏观意义上是同时执行,微观上仍然是顺序执行的,我们称之为并发。

并行

物理上同一时刻处理不同任务。

当系统存在多核 cpu,使得任务可以同一时刻执行,称之为并行。

进程

进程是计算机资源分配的基本单位。

因为 cpu 在多任务之间切换时,如果不正确保存上一个任务的上下文状态,那么下次执行时就会丢失这个任务的执行信息。
进程就是用来定义任务及其资源边界。

线程

线程是 cpu 调度的基本单位。

协程

协程是用户态的轻量级线程。

协程拥有以下特点:
1、调度由用户控制。即在用户态而非内核态完成协程间的调度。 2、更轻量。创建一个协程仅需要很小的空间。
3、协程拥有自己的寄存器上下文和栈空间。


👇👇👇

本文作者: Czasg
版权声明: 转载请注明出处哦~👮‍