小智 6
由于发射器和接收器对象在不同的线程中运行,因此不会同步执行插槽:Qt默认使用排队连接而不是直接连接.但是,您可以在连接时使用阻塞排队连接强制执行同步执行(另请参阅http://qt-project.org/doc/qt-4.8/qt.html#ConnectionType-enum以了解不同连接类型的说明)信号和插槽.
但阻塞队列连接有一个成本:发射器线程被阻塞,直到所有连接的槽都被执行,这不一定是个好主意.但是,如果要使用非阻塞连接,则执行顺序取决于执行插槽时的对象.
需要考虑的重要事项是每个QThread都有自己的事件队列.这意味着只保证给定线程的槽的执行顺序.这意味着您必须考虑以下情况:
| 归档时间: |
|
| 查看次数: |
3677 次 |
| 最近记录: |