协程(微线程)
一种用户态的轻量线程。
拥有自己的寄存器和上下文栈。协程调度切换的时候,将寄存器上下文和栈保存到其他地方,在切回来的时候,恢复先前保存的寄存器的上下文和栈。因此协程能调用上一次调用时的状态(即所有的一个局部状态的一个特定组合),每次过程重入时,相当于进入上一次调用的状态,就是进入上一次离开所处的逻辑流的位置。
协程的好处
1.无需线程上下文切换的开销
2.无需原子操作锁定及切换的开销
3.方便切换控制流,简化编程模型
4.高并发+高扩展性+低成本:一个cpu支持上万的协程都没有问题,所以很适用与高并发处理。
事件驱动与异步io
read more