Qt 多執行緒的一個例子
(2)Project Settings裡面Link標籤頁面新增qtmain.lib qt-mt320.lib
Project Settings裡面C/C++標籤頁面新增QT_THREAD_SUPPORT
(3)原始碼檔案(main.cpp):
#include <qthread.h>
class MyThread : public QThread
{
public:
virtual void run();
};
void MyThread::run()
{
for( int count = 0; count < 20; count++ )
{
sleep( 1 );
qDebug( "Ping!" );
}
}
int main()
{
MyThread a;
MyThread b;
a.start();
b.start();
a.wait();
b.wait();
}
註釋:
This will start two threads, each of which writes Ping! 20 times to the screen and exits.
The wait() calls at the end of main() are necessary because exiting main() ends the program,
unceremoniously killing all other threads.
Each MyThread stops executing when it reaches the end of MyThread::run(),
just as an application does when it leaves main().