当服务器无法访问时,QNetworkAccessManager会阻塞其线程(冻结)

时间:2017-05-18 12:05:31

标签: qt ssl qnetworkaccessmanager

当服务器无法访问时,来自post()的{​​{1}}会阻塞线程QNetworkAccessManager(NAM),它几​​乎会冻结线程,即使触发了超时信号,退出时隙也不会被调用,它只是附加到队列(它在使用时被调试)并在NAM停止阻塞之后调用,可以是一两分钟。检查SSL并确保一切正确,甚至是openssl库的版本。如果我使用动态创建的NAM或计时器,行为是相同的。打印未知错误,不会从回复信号触发插槽。没有SSL错误或其他。 问题是线程没有响应用户输入,比如退出必须等待NAM停止阻止事件循环的应用程序。当然,退出线程的插槽会尝试中断所提出方法中的eventloop,但是在NAM停止阻塞线程的事件循环后调用该插槽。

如何将计时器设置为NAM?或者保持敏感?如果我没有使用本地事件循环并只连接到完成信号,行为是相同的(基于谷歌搜索)

eventLoopServer

0 个答案:

没有答案