Qt Connect信号槽的类型

enum Qt::Connection Type有如下5个类型

Qt::AutoConnection   (默认值)自动连接  
当发送者和接收者在同一线程时默认是 Qt::DirectConnection ,否则是Qt::QueuedConnection。

Qt::DirectConnection    直接连接
发送者和接收者在同一线程,信号一发送槽函数立即响应,slot函数执行在发送者send的线程

Qt::QueuedConnection    排队连接
当控制返回到接收线程的事件循环时slot被调用,slot函数执行在接收者的线程

Qt::BlockingQueuedConnection    阻塞排队连接
发送者的线程会被阻塞直到slot槽函数返回,如果发送者和接收者在同一个线程不能使用这种方法连接,否则应用程序将会“死锁”

Qt::UniqueConnection     独特连接
这是一个标志,它可以与任何一个以上的连接类型,使用按位 OR 组合。当设置了 Qt::UniqueConnection 时,QObject::connect 将失败,如果连接已存在 (如果相同的信号已经连接到同一插槽中,对象的相同)。
发布了69 篇原创文章 · 获赞 37 · 访问量 18万+

猜你喜欢

转载自blog.csdn.net/xi_gua_gua/article/details/56997491