QT多线程开发:QThread的两种使用方式

本文介绍了QT多线程开发中的QThread使用,包括QObject::moveToThread()方法和继承QThread类的两种方式。通过实例展示了如何在后台线程执行耗时任务并更新UI,强调了避免使用while(1) + sleep()的线程管理策略。提供了源码下载链接以供参考。
摘要由CSDN通过智能技术生成

多线程开发

来源:微信公众号「编程学习基地」

什么时候用到多线程,以界面为例:
所有的IO操作都要放到线程里面

1.IO操作 QIODevice 文件IO 网络IO套接字 eg:CAN linux下也是套接字) 串口等外设 ;因为不确定什么时候能读写完成
2. 耗时的算法 eg: 文件压缩 信号处理

注意

线程里面尽量少用 while(1) + sleep(),尤其是while

eg:第一个例子如果用while(1),那么当线程exit(),并等待退出时wait()时不会退出线程,等待超时后会报错

QThread介绍

QThread类提供了一个与平台无关的管理线程的方法。一个QThread对象管理一个线程。QThread的执行从run()函数的执行开始,在Qt自带的QThread类中,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DeRoy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值