模块 coroutine
require "coroutine"
公开 API
| API | 实现 | 说明 |
|---|---|---|
coroutine.create | soupB_cocreate | 创建新协程:返回协程对象,参数 f 为其主函数 |
coroutine.resume | soupB_coresume | 恢复/启动协程 co;首次调用时传入参数给主函数,返回 true+返回值 |
coroutine.running | soupB_corunning | 返回当前运行的协程(主协程返回 nil)及其是否为主协程 |
coroutine.status | soupB_costatus | 返回协程状态:'suspended'/'running'/'normal'/'dead' |
coroutine.wrap | soupB_cowrap | 创建协程并返回包装函数,调用时自动 resume |
coroutine.yield | soupB_yield | 挂起当前协程,将参数传给 resume 的返回值;可继续被唤醒 |
coroutine.isyieldable | soupB_yieldable | 检查当前协程是否可 yield |
coroutine.close | soupB_close | 关闭协程:若在挂起态则使其恢复并关闭(可触发 __close) |