多线程:继承QObject

 这种多线程实现方法为:自定义类继承QObject, 写一个槽函数作为多线程的执行内容;

#include<QThread>//多线程

#include<QTimer>   //不是必须的, 

#include"View"//自定义的类

实现逻辑:定义一个多线程的对象,其作用类似于一个容器,

    QThread thread;

    thread.start()//启动多线程

第二步、定义一个自己要执行多线程的类,要求继承父类是QObject,有一个槽函数,函数名随意;

    View pView;

第三步、把自定义的类加入到多线程对象(容器)中

pView.moveToThread(&thread);//固定加入函数

最后一步、将多线程要执行的内容作为一个槽函数,通过一定的条件触发;

QTimer timer;//这里的触发信号是定时器:timeout()

  timer.start(1000);

     QObject::connect(&timer, SIGNAL(timeout()), &pView, SLOT(onTimeout()));

猜你喜欢

转载自blog.csdn.net/qq_41672557/article/details/80324251