QT开发应用程序(14)-- 线程

1、多线程间的控制

有以下类提供对线程进行互斥和同步。
QMutex
QMutexLocker
QReadWriteLocker
QReadLocker
QWriteLocker
QSemephore
QWaitCondition

2、线程

头文件定义

#include <QThread>

class WorkThread : public QThread
{
    Q_OBJECT
public:
    WorkThread();
    bool m_bRunning;
protected:
    void run();
};

CPP实现

#include "workthread.h"
#include <QtDebug>

WorkThread::WorkThread()
{
	m_bRunning = false;
}

void WorkThread::run()
{
	m_bRunning = true;
    while(m_bRunning )
    {
        for(int n=0;n<10;n++)
            qDebug()<<n;
    }
}

3、启动线程

workThread=new WorkThread();
workThread->start();

4、结束线程

workThread->m_bRunning = false;
workThread->terminate();
workThread->wait();

发布了30 篇原创文章 · 获赞 9 · 访问量 927

猜你喜欢

转载自blog.csdn.net/x879014419/article/details/105144022