单是协程只能实现 iterator 那样的 yield,用于循环迭代。比如拿协程来实现编程语言的 lexer 特别方便。
如果想拿协程多干点事,就必须有个事件循环协程。事件循环协程根据定时器以及 io 事件来切换协程。普通协程干完活就 yield 到这个事件循环协程。
主线程的 main() 是否转换成事件循环协程没有规定。看使用时候是否方便。比如有些人想直接在 main() 里面完成 http 请求。那就得在后台启动事件循环协程。而图形界面的话,估计很多人会直接在 main() 里面跑事件循环协程。
【 在 stub 的大作中提到: 】
: 也就是主线程是否用来执行协程
--
FROM 59.61.198.*