Qt 笔记:信号与槽的连接方式

本文详细介绍了Qt中信号与槽的五种连接方式:Qt::DirectConnection(立即调用)、Qt::QueuedConnection(异步调用)、Qt::BlockingQueuedConnection(同步调用)、Qt::AutoConnection(默认连接)和Qt::UniqueConnection(单一连接),并分析了各种连接方式的特点和使用场景。重点阐述了它们在线程交互中的行为差异,以及Qt::AutoConnection作为默认连接方式的原因和优势。
摘要由CSDN通过智能技术生成

深入信号与槽的连接方式

-Qt::DirectConnection(立即调用)

-Qt::QueuedConnection(异步调用)

-Qt::BlockingQueuedConnection(同步调用)

-Qt::AutoConnection(默认连接)

-Qt::UniqueConnection(单一连接)

bool connect(const QObject* sender,
             const char* signal,
             const QObject* receiver,
             const char* method,
             Qt::ConnectionType type = Qt::AutoConnection);

Qt::DirectConnection(立即调用)

-直接在发送信号的线程中调用槽函数,等价于槽函数的实时调用!

Qt::QueuedConnection(异步调用)

-信号发送至目标线程的事件队列,由目标线程处理;当前线程继续向下执行!

Qt::BlockingQueuedConnection(同步调用)

-信号发送至目标线程的事件队列,由目标线程处理;当前线程等待槽函数返回,之后继续向下执行!

ps:目标线程和当前线程必须不同

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值