本文介绍的是Qt中多线程系列之线程初体验,比较清浅的一些知识,如果你对多线程感兴趣的话,请继续参考 浅析 Qt中多线程系列之线程控制 下篇,你肯定有兴趣。先来看本篇内容。
我总觉得学一个东西时候,我们应该保留最简单本质的东西,接着做个demo的程序先跑起来,再慢慢学入进去.这样一来难度也不会那么大,有时我们也需要自我陶醉一翻,有点成就感了,才能有动力下去。
每个操作系统平台和语言都有自己创建线程的办法,可我们精力有限,不可能一个个全都知道和去学,一般工作也就是掌握一两个.幸好现在有QT,免去平台差异的东西。qt大概从3.x后就开始有了线程支持,到了4.x的时候更是加入了更多高级功能,比如跨线程signal/slot,线程消息循环等,这也为我们做线程通信提供了很好的环境.
在QT要使用线程的话,必须从QThread派生一个类,这是规定,哪怕你的线程做的事情简单到1+1都得这么做.。这次我们先做个简单的程序,让一个多线程程序跑起来,其他的留到以后再说.
使用一个线程的主要的步骤如下:
1、定义一个线程类,继承自QThread
2、重载protected Run方法
3、实例化类,用QThread 的Start方法 ,开始跑起线程,这样最终创建的线程将和主线程就并发运行了
CTHREAD.H
- #ifndef CTHREAD_H
- #define CTHREAD_H
- #include <QThread>
- class CThread : public QThread
- {
- public:
- CThread();
- protected:
- void run();
- };
- #endif // CTHREAD_H
CTHREAD.cpp
- #include "CThread.h"
- #include <QDebug>
- CThread::CThread():QThread()
- {
- }
- void CThread::run()
- {
- for(int i=1;i<=10000;i++)
- qDebug()<<i;
- }
小结:Qt中多线程系列之线程初体验 上篇的内容介绍完了,想要深入了解的话,就继续看 浅析 Qt中多线程系列之线程控制 下篇。最后希望本篇对你有帮助。