QThread之创建
2015-10-21 09:52
459 查看
1.继承QThread并且覆盖其中的run方法
2.调用start启动线程
3.这个基本跟java的一样,这个可以简化,我们只是开启一个线程去跑run的代码,有点小题大用,这时我们可以直接使用
他接受一个方法和参数
包含头文件#include
<QtConcurrent/qtconcurrentrun.h>
以及他会返回一个Future,这个在scala中比较常用,这种模式很有用,他可以让你直接控制线程的状态,例如我们可以通过
t1.waitForFinished();来等待结果,当然这是不好的,因为他是堵塞的,如果用回调的方式来监听结果就很棒
2.调用start启动线程
#ifndef MYTHREAD_H #define MYTHREAD_H #include <QThread> #include <QString> #include <QDebug> class myThread : public QThread { Q_OBJECT public: explicit myThread(QString str); void run(); private: QString mname; signals: public slots: }; #endif // MYTHREAD_H
#include "mythread.h" myThread::myThread(QString para):mname(para) { } void myThread::run() { for(int i=0;i <= 100;i++){ qDebug() << this -> mname << " " << i; } }
3.这个基本跟java的一样,这个可以简化,我们只是开启一个线程去跑run的代码,有点小题大用,这时我们可以直接使用
QtConcurrent::run(myRunFunction,QString("A"));
他接受一个方法和参数
包含头文件#include
<QtConcurrent/qtconcurrentrun.h>
以及他会返回一个Future,这个在scala中比较常用,这种模式很有用,他可以让你直接控制线程的状态,例如我们可以通过
t1.waitForFinished();来等待结果,当然这是不好的,因为他是堵塞的,如果用回调的方式来监听结果就很棒
相关文章推荐
- QThread之调度
- pycharm+QT4的helloworld
- Qt udp socket用于进程间通信
- Qt thread and eventloop
- 惠普功能测试UFT(QTP)使用心得
- QT4.8.5+qt-vs-addin-1.1.11+VS2010安装配置和QT工程的新建和加载
- Qt问题记录
- 用Qt Creator编写代码+ vs2010编译调试的配置
- OPenGL-2D Painting Example in Qt4.
- 物联网协议比较 MQTT CoAP RESTful/HTTP XMPP
- Qt4.8.5 、Qt Creator、MinGW 4.4在win7 sp1 x64 下安装(也含Qt5.0以上版本windows下安装)
- [Qt]调用外部执行程序(Windows & Mac)
- Qt: QT + openCV 实现摄像头采集以及拍照功能
- Qt自适应大小显示图片,添加菜单
- QT中显示图像数据
- 初次使用Qt Creater网络编程,出现error: undefined reference to `_imp__WSAStartup@8'
- Customizing Qt Widgets Using Style Sheets
- Qt Designer Integration
- 解析Qt自带的Style示例
- Qt5基本对话框