别弄这些没用的了。不够debug的呢。
要么别用coroutine,要么,直接使用libc里的协程函数。
makecontext,getcontext,setcontext,swapcontext。主要就这几个函数,概念基础,所需的资源自己控制,细节自己清楚,用起来简单,debug相对容易。
我猜所有协程工具都是对这几个函数的包装,用到的机制和资源不清楚,可能使用过程会遇到麻烦。
基础协程函数stack的尺寸是你自己设定的,不够用自己调整。
【 在 allegro 的大作中提到: 】
: 自己写了一些带coroutine的for循环,发现stackoverflow。
: 怀疑是不是有symmetric transfer的问题,对着Lewis Baker的那篇博文比较,的确如此。
: 改成symmetric transfer的形式后,仍然crash,导致自我怀疑好几天。
: ...................
--
修改:ylh1969 FROM 221.221.55.*
FROM 221.221.55.*