QT信号和槽 线程问题

本文介绍了在Qt环境下,如何控制槽函数在线程中的运行。通过QObject的connect方法连接信号和槽,当在子线程运行时,槽函数会跟随接收者在相应线程执行。同时,展示了如何从主线程启动一个子线程,使得特定功能如startCcount在新线程中运行,确保了线程安全和程序的高效执行。
   
//当前在子线程运行时候 ,connet reciever==>如果在主线程,则槽函数会在主线程运行
//reciever==>如果在子线程,则槽函数会在子线程运行
QObject::connect(A,SIGNAL(finisheSignalInfoReply(QNetworkReply *)),
                             reciever,SLOT(requesteraaa(QNetworkReply *)));


    

//从主线程启动,让槽函数在子线程中运行
//让AOBject : public QObjct
//添加signals
//添加 slots startCcount()
//在主线程点击按钮让 startCcount  在子线程运行
//QThread 启动线程

        AOBject Obj = new AOBject;   //不能绑定parent
        QThread *thread = new QThread(this);        //2.创建QThread
        Obj->moveToThread(thread);              //3.对象移到线程中去
       
//通过槽函数 startCcount才能在子线程中运行
 QObject::connect(btn_start,SIGNAL(clicked()), 
                         Obj,SLOT(startCcount()));

        thread->start();        

槽函数在多线程中的一些用法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值