我看的cocos2d-x源码是v2.2.6版本的,v3版本中已经确认修复了这个问题。如果你出现http请求不能顺利的提交出去,那么可能就是这个底层的bug导致。
这是产生问题的那段代码,关键错误在于 如果进入到 NULL==request分支的时候, 如果发生线程切换,另一个线程提交请求,并且signal企图唤醒networkThread, 但是由于networkThread还未开始等待而错过了此次信号,就会导致networkThread进入等待状态,而不去处理之前投递的http请求。
尽管这样的问题产生的几率不高,但是在一个长连接为主,短连接为辅的服务器中几乎是致命的,比如有可能阻塞的是客户端提交充值令牌的一个请求