QT多线程类数组同时开启几十个线程
来源:互联网 发布:修改图片大小的软件 编辑:程序博客网 时间:2024/04/27 06:56
教程简单明了,一看就懂。
首先来看线程类:textTread
texttread.h
#ifndef TEXTTREAD_H#define TEXTTREAD_H#include <<A class=keylink href="http://www.it165.net/pro/pkqt/" target=_blank>QT</A>hread>class textTread : public <A class=keylink href="http://www.it165.net/pro/pkqt/" target=_blank>QT</A>hread{ Q_OBJECTpublic: textTread(); void run();signals: void sendGUIThreadData(QString str); //向主线程通信的信号public slots: void GetGUIThreadID(int mThreadID); //接受主线程通讯过来数据的槽private: int ThreadID;};#endif // TEXTTREAD_H
再来看 texttread.cpp
#include "texttread.h"#include <qDebug>textTread::textTread(){}void textTread::run(){ qDebug() << tr("Thread is Open,ThreadID : %1").arg(ThreadID); //You can do anything in here 嗨嗨拽两句鸟文}void textTread::GetGUIThreadID(int mThreadID) //接受主线程通讯过来的数据{ ThreadID = mThreadID;}
再看在GUI主线程实现50个线程的代码:
const int LENGTH = 50;textTread *tread; tread = new textTread[LENGTH]; for(int i=0;i<=LENGTH-1;i++){ connect(this,SIGNAL(SendGUIThreadID(int)),&tread[i],SLOT(GetGUIThreadID(int))); connect(&tread[i],SIGNAL(sendGUIThreadData(QString)),this,SLOT(GetGUIThreadData(QString))); emit SendGUIThreadID(i); tread[i].start(); }
声明类的指针数组。
然后循环绑定信号与槽,最后循环用Start()运行线程,注意此处new 出的类数组,后面用的是.而不是-> 。
原创:转载请注明出处:http://www.it165.net/pro/html/201204/2247.html
- QT多线程类数组同时开启几十个线程
- 同时开启多个Tomcat
- Python开启多线程,并同时等待每个线程完成后再推出
- 多线程之线程的开启
- [Unity3d]unity同时开启多个项目
- ListView中同时开启多个倒计时
- startActivities同时开启多个界面
- 问题: 写一个多线程程序实现铁路卖票系统,4个窗口同时售票,线程同步
- Java多线程指定资源可以被多少个线程同时访问
- 【线程】多线程同时拷贝同一文件
- Qt 乱码同时支持多个编码
- Qt同时实现多个动画效果
- ios多线程同时访问数组问题
- 多线程同时启动多个应用程序
- 多线程异步编程(1):创建多个线程执行任务,同时更新进度条,使用WaitHandle发送信号
- 不要在MCU函数里面定义超过几十个字节的数组
- Linux能同时启动多少个线程
- 多个线程同时访问资源
- Linux可用内存统计方法
- Enhancement
- 一直寻求的,灵魂__摘自复旦大学陈果教授<大学生活导论>
- SMARTFORM & SAPScript
- LSMW
- QT多线程类数组同时开启几十个线程
- ALV,TABLE TREE等一些控件
- tomcat,Jboss,weblogic区别、容器的作用
- ABAP的学习方法
- OLE & DOI
- CATT eCATT
- BDC
- Pro*C动态SQL总结3
- uestc 1546 Bracket Sequence(线段树 括号匹配)