协程libgo

协程

不管是什么样的协程,最核心的内容,都是在系统发生阻塞的时候上层主动让出CPU,切换就绪协程的上下文,简要总结,有如下几个方面:

  1. 上下文切换的实现
  2. 系统函数的hook;
  3. 协程调度;
  4. 时间管理;

在libgo目录下

  1. task:协程的相关实现;
  2. scheduler:协程调度的实现;
  3. debug:libgo 自带的调试功能(用于协程状态的定位等);
  4. coroutine.h:对一些常用对方法进行了重定义。
  5. netio:hook的系统调用;
  6. context:上下文的切换;
  7. pool:libgo 实现的连接池

https://blog.51cto.com/muhuizz/2328117

有时候,不小心知道了一些事,才发现自己所在乎的事是那么可笑。
原文地址:https://www.cnblogs.com/axjlxy/p/15633541.html