开发应用是经常会用到多线程,使用QT5实现多线程的方式时,首先新建C++类继承QThread,然后重写run方法。
1.cfaceclassthread.h
#ifndef CFACECLASSTHREAD_H
#define CFACECLASSTHREAD_H
#include <QThread>
#include <QEventLoop>
#include <QTimer>
#include <iostream>
using namespace std;
class CFaceClassThread : public QThread
{
public:
CFaceClassThread();
//结束线程标志位
bool bStopThread;
void run();
};
#endif // CFACECLASSTHREAD_H
2.cfaceclassthread.cpp
#include "cfaceclassthread.h"
CFaceClassThread::CFaceClassThread()
{
bStopThread = false;
}
//线程执行函数
void CFaceClassThread::run()
{
//cout<<"thread run!"<<endl;
bStopThread = false;
while(!bStopThread)
{
//to do what you want
//延时等待一会
QEventLoop eventloop;
QTimer::singleShot(100, &eventloop, SLOT(quit()));
eventloop.exec();
}
}
<

在QT5开发中,为实现多线程操作,通常需要自定义C++类继承QThread,并覆盖run方法。本文将详细阐述如何创建并使用这些线程类,包括头文件(如cfaceclassthread.h)、源代码文件(cfaceclassthread.cpp)以及在MainWindow.cpp中的应用。
最低0.47元/天 解锁文章
3635

被折叠的 条评论
为什么被折叠?



