我想基于 QTcpServer
和 QTcpSocket
创建一个库,以供那些在其 main
函数中没有事件循环的程序使用(因为Qt事件循环是阻塞的,并且不能提供足够的时间分辨率来执行实时操作)。
我希望通过在类内部创建本地事件循环来解决这个问题,但是除非我首先在主函数中调用了 app->exec()
,否则它们似乎不起作用。是否有一种方法可以创建本地事件循环,并允许在线程内进行信号/槽通信,而不需要应用级别的事件循环?
我已经查看了是否有一种方法可以在不使用QApplication :: exec()的情况下使用Qt? 但该答案并没有帮助,因为它似乎添加了一个本地事件循环,但没有删除应用程序循环。
QApplication::exec()
并将其保持为“主线程”? - ratchet freakQApplication :: exec
的调用。 - Nicolas Holthaus