QT connect函数ConnectionType参数的使用

目录

  • connect函数的连接方式
  • 说明
  • 注意

connect函数的连接方式

connect函数最后一个参数ConnectionType用来区分槽函数的调用方式。默认是AutoConnection ,即自动根据发送者和接收者,所属线程决定调用的方式。若发送者跟接收者属于同一线程,则以DirectConnection方式调用,若二者不属于同一线程,则以QueuedConnection方式调用。

说明

DirectConnection:信号所在线程直接调用槽函数。(类似普通回调函数)
QueuedConnection:不立即在发送者当前线程中调用槽函数,而是当控制返回到接收者属于的线程的事件循环时再调用槽函数。
(还有其他方式,主要说常用的两种)

注意

1、 判断发送者或接收者所属于的线程的依据是,connect函数中传入的对象指针所指向的对象在哪个线程中创建的。
2、若槽函数为lamda表达式,则默认直接以DirectConnection方式调用。

(如有不当之处,请指正)

你可能感兴趣的:(QT,qt,开发语言,c++)