QT新建线程的几种方法:
1.继承Qthread新建一个类,重写run方法,此方法除run之外,其他的都还是在主线程中运行;
2.使用moveToThread将新建线程转移到继承QObject的新类实例中;
方法1:
1.新建一个类WorkThread,基类为QThread。
2.重写类WorkThread的虚函数void run();,即新建一个函数protected void run(),然后对其进行定义。
3.在需要用到多线程的地方,实例WorkThread,然后调用函数WorkThread::start()后,则开启一条线程,自动运行函数run()。
4.当停止线程时,调用WorkThread::wait()函数,等待线程结束,并且回收线程资源。
新建一个类继承QThread:
class WorkThread : public QThread
{
public:
WorkThread();
protected:
void run();
};
重写类WorkThread的虚函数void run(),为线程需要执行的函数:
WorkThread::WorkThread()
{
}
void WorkThread::run()
{
while(true)
{
for(int n=0;n<10;n++)
qDebug()<<n<<n<<n<<n<<n<<n<<n<<n;
}
}
在需要使用的地方实例化此类并使