QThread t;
QObject::connect(&t, &QThread::started, []() { qDebug() << "process" << QThread::currentThreadId(); });
t.start();
依赖头文件,
#include <QThread>
#include <QDebug>
==============扩展延伸============================
现实使用中,往往有自己的worker类,希望在线程中调用worker处理接口,实现并行处理,实现如下,非常简单,
1.worker类继承QObject,添加槽处理接口,例如:
#include <QObject>
class Worker : public QObject
{
Q_OBJECT
public slots:
void processData();
};
.cpp实现:
void Worker::processData()
{
qDebug() << "processData" << QThread::currentThreadId();
}
2.control类或其它接口中,将Worker放到线程中处理,代码如下:
QThread t;
Worker worker;
QObject::connect(&worker, SIGNAL(started()), &my, SLOT(processData()));
worker.moveToThread(&t);
t.start();
qDebug() << "main" << QThread::currentThreadId();
当然,我是直接使用QThread::started信号实现接口调用,实际上可以更灵活,通过其它类的信号进行触发。