现在由于需要请求api,使用了workerman/http-client,但是搞不懂它的原理是怎么实现异步非阻塞的(我没有使用coroutine),我在workerman/http-client中的请求回调匿名函数中需要使用这个之前在我现在担心如果workerman/http-client正在等待api返回,此时workerman又收到一个请求,在这个新请求中使用了这个mysqli对象,此时很可能api返回成功,触发匿名回调函数,又使用了这个调用流程是set参数-》buildSQL-》execute-》getdata.我担心在下一个onmessage中执行了set参数到execute之间的任何一步,此时回到回调函数中会毁掉这个onmessage#### 为此你搜索到了哪些方案及不适用的原因
没有找到workerman/http-client与mysqli相关的问题。大家好像都用thinkorm。(官方也推荐使用)。由于底层的mysqli是阻塞串行执行,所以一定不会导致竞争,且由于每个onMessage的查询构建器是独立的所以不会影响。
但_Anyway,还是想知道原问题的答案:)