我没有exec()
在我的代码中调用,但是timer
并且QUdpSocket
工作正常.被exec()
用于等待的event
继续吗?
更新:timer
工作正常,因为我没有打电话moveToThread(this)
给QThread
,这意味着它QThread
实际上仍然是其中的一部分main thread
.至于QUdpSocket
我使用投票functions
.所以它不需要合作signals
.
提示:如果你需要做init
一些东西,那需要event loop
你的QThread
,你可以delay
打电话,moveToThread
直到你不再需要它signals
,这在程序加载时是实用的.您也不需要在构造函数中调用它run()
(例如,您可以在内部调用它),只需将this QThread
指针复制到变量并call
使用指针在其他地方/其他地方生成.