天天看点

Qt应用程序提供多线程1建一个Qt项目建一个myThread类派生自QThread类,

在Qt应用程序中实现多线程的方法:子类化QThread并且重新实现它的run()函数就可以了.

下面举一个例子:

1建一个Qt项目

Qt应用程序提供多线程1建一个Qt项目建一个myThread类派生自QThread类,
Qt应用程序提供多线程1建一个Qt项目建一个myThread类派生自QThread类,

可以同时选择多个编译器

Qt应用程序提供多线程1建一个Qt项目建一个myThread类派生自QThread类,
Qt应用程序提供多线程1建一个Qt项目建一个myThread类派生自QThread类,

建一个myThread类派生自QThread类,

Qt应用程序提供多线程1建一个Qt项目建一个myThread类派生自QThread类,
Qt应用程序提供多线程1建一个Qt项目建一个myThread类派生自QThread类,
Qt应用程序提供多线程1建一个Qt项目建一个myThread类派生自QThread类,

完成之后在myThread.h中加入如下代码

class myThread : public QThread
{
public:
    myThread();
    void stop();

protected:
    void run();
private:
    volatile bool stopped;
};

           

在myThread.cpp中输入

myThread::myThread()
{
    stopped=false;
}

void myThread::run()
{
	while(!stopped)
	{
		//线程功能语句	
	}
}
void myThread::stop()
{
    stopped=true;
}

           

当需要使用这个线程时

只需要在mainwindow.cpp中输入

myThread *workthread = new myThread();
           

线程就创建好了

workthread->start();			//线程启动
workthread->stop();				/线程关闭