协程libgo
协程
不管是什么样的协程,最核心的内容,都是在系统发生阻塞的时候上层主动让出CPU,切换就绪协程的上下文,简要总结,有如下几个方面:
- 上下文切换的实现
- 系统函数的hook;
- 协程调度;
- 时间管理;
在libgo目录下
- task:协程的相关实现;
- scheduler:协程调度的实现;
- debug:libgo 自带的调试功能(用于协程状态的定位等);
- coroutine.h:对一些常用对方法进行了重定义。
- netio:hook的系统调用;
- context:上下文的切换;
- pool:libgo 实现的连接池
https://blog.51cto.com/muhuizz/2328117