在Qt中,可以使用QThread類來開啟多個線程。以下是使用QThread開啟多個線程的步驟:
創建一個繼承自QThread的子類,例如MyThread。
在MyThread類中重寫run()函數,編寫需要在該線程中執行的代碼。
在主線程中創建MyThread的實例對象,例如thread1和thread2。
調用thread1.start()和thread2.start()來啟動線程。
以下是一個簡單的示例代碼:
#include <QThread>
#include <QDebug>
class MyThread : public QThread
{
public:
void run() override
{
qDebug() << "Thread ID:" << QThread::currentThreadId();
}
};
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
MyThread thread1;
MyThread thread2;
thread1.start();
thread2.start();
thread1.wait(); // 等待線程1執行完畢
thread2.wait(); // 等待線程2執行完畢
return a.exec();
}
執行以上代碼,會開啟兩個線程并打印它們的線程ID。注意,主線程會等待線程1和線程2執行完畢后再退出。