a demo for how to use QThread
2015-09-12 14:48
483 查看
/******************************************************************* * a demo for how to use QThread * 声明: * 这是一个简单的QThread使用模板,对于应付简单的程序来说, * 还是足够了。 * * 2015-9-12 阴 深圳 南山平山村 曾剑锋 ******************************************************************/ cat thread.h #ifndef THREAD_H #define THREAD_H #include <QThread> class Thread : public QThread { Q_OBJECT public: explicit Thread(QObject *parent = 0); signals: void msg(QString str); public slots: void run(); void stop(); private: bool running; }; #endif // THREAD_H cat thread.c #include "thread.h" Thread::Thread(QObject *parent) : QThread(parent) { running = true; } void Thread::run() { int nbytes; int len; struct can_frame frame; struct sockaddr_can addr; char buf[10]; while(running) { QThread::msleep(100); /** * this was very important sametime for receive data */ if (running) { emit msg(QString(buf)); } } } void Thread::stop() { running = false; } cat mainwindow.c ...... /** * how to stop a Qt thread */ if ( thread != NULL ) { thread->stop(); thread->wait(); thread->deleteLater(); } ......
相关文章推荐
- 转:Qt项目中遇到的一些小问题汇总
- OK6410 解决Qt移植后触摸屏不能使用、鼠标无法移动问题
- Qt的QPlainTextEdit超过指定行自动刷新清空
- QT signals and slots
- Qt
- 自学QT之制作QQ界面
- Qt pro文件的写法规则
- Qt 多线程编程中的对象线程与函数执行线程
- Qt程序卡住不动(QTreeWidgetItem setText)
- qt多线程间通信
- Qt Creator 搭建嵌入式开发环境
- 开始QT+OpenCV学问
- QT下使用OpenGL渲染Mesh的框架
- 使QT内建的对话框文字显示为中文 window7+vs2010+qt
- Qt 为自己的程序建立一个消息循环
- Pyqt4 实现窗口全屏显示
- Qt多工程多目录编译方法
- Qt 调用Fortran dll
- [置顶] Qt绘图控件QCustomPlot安装
- QT数据传输中的对象序列化与反序列化