现象描述🙁1)在timer里面用ngx.thread.spawn 开启了协程1, 同时也开启了协程2,3 (2) 协程1崩溃("lua entry thread aborted"),协程2,3也没有运行。 为什么会出现这种情况,求解。。。
你说的协程挂掉,是说出现了 Lua 运行时异常吧?出现了 Lua 运行时异常,会导致当前请求/timer 退出的 因为 Lua 运行时异常这是致命的错误,没法继续执行后面的逻辑了
如果你希望不受影响,可以放到不同的 thread 里来执行
doujiang24 有个疑问:在同一个timer里面开启的多个协程,属于同一个thread吗?
纠正一下哈,thread 就是协程,timer 是一个伪请求,timer 里的多个 thread/协程,如果碰到了 Lua 运行时异常,是会导致请求(timer)退出的