Qt 创建线程的两种方法

方法一:Qt4.7及以前版本

1.创建一个类从QThread类派生
1)在项目中新建一个基于QObiect的c++ class类文件(例如MyThread ),生成MyThread .h和MyThread .cpp两个文件
2)在头文件MyThread .h中修改两处,a)将包含的头文件#include< QObiect >替换成#include < QThread >,b)将继承的基类class MyThread : public QObiect 修改为class MyThread : public QThread
3)在MyThread .cpp中,将MyThread::MyThread(QObject *parent) : QObject (parent)修改为MyThread::MyThread(QObject *parent) : QThread(parent)

2.在子线程类workThread.cpp中重写run函数,将处理操作写入该函数中,例如:

void MyThread::run()
{
    //复杂的数据处理,需要耗时5秒,用sleep(5)代替
    sleep(5);
    emit isDone();//数据处理结束信号
}

3.在主线程mywidget.cpp中创建子线程 对象,启动子线程,调用start()函数,
例如

#include "mywidget.h"
#include "ui_mywidget.h"
#include<QThread>
#include<QDebug>

MyWidget::MyWidget(QWidget *parent) :
    QWidget(parent),
    ui(ne
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值