外围包装调度器, 实现子协程, 各种针对业务特化的特性, 如sleep, rpc request等, 另外也有集中的地方对当前系统的所有协程做集中的管理和调度....Scheduler实现
4.1 Scheduler实现的动机
一些复杂的机制, 如子协程的创建和等待, 依赖外围系统的Sleep机制, 异步Rpc机制等, 肯定不适合直接在最底层的stackless...以及三个基础机制方便协程相关业务机制的实现:
Yield机制: 用于协程挂起时向Scheduler返回控制指令
Resume机制: 用于对挂起等待的协程传递值, 方便业务侧代码针对不同情况进行处理
FinishEvent...大部分情况本地变量的使用编译器会直接报错, 如 for(int i = 0; ...)...{rco_yield();}这种, 但如果在函数实现头部声明 int i = 0;再使用, 上面的代码会出现死循环, 原因是每次function执行的时候都会将i的值重置为0, 这个是一定要注意的.