Qt 信号与槽

信号与槽--第5个参数:Qt::AutoConnection、 Qt:: DirectConnection、 Qt::QueuedConnection

(1)自动连接(AutoConnection):默认参数
        ①如果信号在接收者所依附的线程内发射,则等同于直接连接;
        ②如果发射信号的线程和接受者所依附的线程不同,则等同于队列连接

也就是这说,只存在下面两种情况
(2)直接连接(DirectConnection):
        当信号发射时,槽函数将直接被调用。
        无论槽函数所属对象在哪个线程,槽函数都在发射信号的线程内执行。

(3)队列连接(QueuedConnection):
        当控制权回到接受者所依附线程的事件循环时,槽函数被调用。槽函数在接收者所依附线程执行。

信号与槽--传参:

参数个数 :信号参数 ≥ 槽函数参数

参数类型:任意参数类型,支持值传递,支持引用传参(跨线程时只能传const &)。


信号与槽 -- 注意:

使用方法:连接时connect(.....),断开连接disconnect(....);

隐患:重复连接会造成发出1次信号,多次槽函数响应。

你可能感兴趣的:(Qt 信号与槽)