下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Linux 下 Qt 多线程编程作者:武汉华嵌技术部以下和大家分享 Linux 平台下 Qt 两种多线程编程的方式: 1、 使用 Linux 平台下的线程函数。以下是给出的代码片段: /此处为连接信号和槽,通过 Qt 界面中两按钮来控制两个槽 函数connect(pthred1start, SIGNAL(clicked(), this,SLOT(pthread1start();connect(pthred1stop, SIGNAL(clicked(), this,SLOT(pthread1stop();/*linux平台下的线程*/此函数为线程处理函数 void *mythread(void
2、*arg)Qt1 *tt = (Qt1 *)arg; / 接收 qt1 的 this 指针 tt->i = 0;while(1)(tt->i)+;qDebug()<<i is : <<tt->i;/通过接收来的指针操作 qt1 的界面 tt->LeFirst->setText(QString:number(tt->i); sleep(1); void Qt1:pthread1start()/在槽函数中通过 Linux 下的线程函数来创建一个线程, 并且 /把 Qt1 中的 this 指针传到线程函数中int ret = pthread
3、_create(&ptid, NULL, mythread, (void *)this);if(ret != 0) printf(wrongn); void Qt1:pthread1stop()/关闭线程 pthread_cancel(ptid); 2 、使用 QT 自带的线程类。以下是给出的代码片段: 要使用 QT 自带的线程类,来实现多线程编程,需要子类化 QThread,并且重新实现它的run()函数就可以了。如下所示: /子类化 QThreadclass myThread: public QThreadQ_OBJECTpublic: myThread(QWidget *pare
4、nt = 0);myThread();void run();Qt1 *tt;int i;/* qt自带线程*/子类化 QThread 的构造函数的实现,并且对成员变量进行 初始化myThread:myThread(QWidget *parent)i = 0;tt = (Qt1 *)parent;/ 保存 qt1 对象的 this 指针的值 myThread:myThread()/*qt 自带线程 start 后,会自动执行 run 函数 */重新实现 QThread 的 run() 函数 void myThread:run() while(1)(tt->i)+; qDebug()<
5、<i is : <<(tt->i);/通过接收的 this 指针的值,来操作 qt1 对象的界面 tt->LeFirst->setText(QString:number(tt->i); sleep(1); 以上是实现了自己的线程类,然后就如何使用了,使用如 下:在界面的构造函数中有如下代码: /生成一个自己实现的 qt 中的线程类对象 thread = new myThread(this); /通过两个控件来控制线程的开始和结束 connect(qthreadstart, SIGNAL(clicked(), this, SLOT(pthread2start();connect(qthreadstop, SIGNAL(clicked(), this,SLOT(pthread2stop();void Qt1:pthread2start()thread->start();/ 启动 qt 线程 void Qt1:p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 全国医务人员安全培训课件
- 全员杜绝违章安全培训课件
- 全员培训消防安全知识课件
- 高分子材料就业前景分析
- 龙岗区消防安全管理
- 光缆基本知识课件
- 奢侈品折扣话术
- 2025-2026学年山东省临沂市兰山区八年级(上)期中数学试卷(含简略答案)
- 光圈介绍教学课件
- 光伏运维生产培训课件
- 医院药学信息服务的方式(医院药学)
- 《小讲课糖尿病》课件
- 《Y移动互联网公司校园招聘问题与优化策略》9200字(论文)
- 数字逻辑与数字系统知到智慧树章节测试课后答案2024年秋武汉科技大学
- 城市道路路基土石方施工合同
- 南京工业大学甲醇制氢工艺设计(反应器)
- 学校领导班子年终工作总结
- 水利信息化水情监测系统单元工程质量验收评定表、检查记录
- 电驱动石油深井钻机相关项目投资计划书范本
- 车位转让车位协议书模板
- 国家基本公共卫生服务项目之健康教育
评论
0/150
提交评论