qt 线程简单学习

Posted jec

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qt 线程简单学习相关的知识,希望对你有一定的参考价值。

  1. QThread线程,只需继承QThread类,并重载run方法,之后就可以使用了。
    #ifndef THREAD_H
    #define THREAD_H
    
    #include <QThread>
    
    class Thread : public QThread
    {
        Q_OBJECT
    public:
        Thread()
        {
    
        }
    
    protected:
        void run()
        {
            //add code
        }
    };
    
    #endif // THREAD_H

     

  2. 也可以继承QObject对象,然后在派生类中声明一个QThread对象,在使用QObject的moveToThread方法,再借助信号,槽机制就可以实现多线程了。
    #ifndef THREAD_H
    #define THREAD_H
    
    #include <QThread>
    #include <QObject>
    
    class Thread : public QObject
    {
        Q_OBJECT
    public:
        Thread()
        {
            this->moveToThread(&thread);
            thread.start();
        }
    
    private:
        QThread thread;
    };
    
    #endif // THREAD_H

     

以上是关于qt 线程简单学习的主要内容,如果未能解决你的问题,请参考以下文章

Qt线程的简单使用

Qt线程的简单使用

线程学习知识点总结

QT多线程的简单使用,主线程发一份数据,子线程收两份数据

单例模式:Qt本身就提供了专门的宏 Q_GLOBAL_STATIC 通过这个宏不但定义简单,还可以获得线程安全性

Qt线程的简单使用系列