主线程ngx.thread.spawn A线程,当A线程执行到http:connect的时候会yield自己
主线程spawn完A线程后,会执行一个循环,循环结束的条件是A线程将lrucache中某一个key对应的value设置为nil。
现在遇到的问题:
当A线程yield自己后,主线程就一直在无限循环,而A线程永远不会执行http:connect之后的代码
我已尝试的解决方案:
1.在主线程中resume线程A,结果无效,主线程还是在无限循环
2.在主线程中判断
if lrucache:get(“key”) then
coroutine.yield(coroutine.running())
end
结果无效,主线程依旧死循环
求助如何解决该问题...