当前位置: 首页 > news >正文

基于Qt 多线程(继承 QObject 的线程)

继承 QThread 类是创建线程的一种方法,另一种就是继承QObject 类。继承 QObject 类更加灵活。它通过 QObject::moveToThread()方法,将一个 QObeject的类转移到一个线程里执行。恩,不理解的话,我们下面也画个图捋一下。

通过上面的图不难理解,首先我们写一个类继承 QObject,通过 QObject::moveToThread()方法将它移到一个 QThread 线程里执行。那么可以通过主线程发送信号去调用 QThread 线程的方法如上图的 fun4(),fun5()等等。这些方法都是在 QThread 线程里执行的。

## 应用实例

本例目的:快速了解继承 QObject 类线程的使用。

本例通过 QObject 类继承线程,然后在 MainWindow 类里使用。通

过点击一个按钮开启线程。另一个按钮点击关闭线程。另外通过加锁的操作来安全的终止一个线程。(我们可以通过 QMutexLocker 可以安全的使用 QMutex 以免忘记解锁。)在我们谈谈为什么需要加锁来终止一个线程?因为 quit()和 exit()方法都不会中途终止线程。要马上终止一个线程可

http://www.lryc.cn/news/230448.html

相关文章:

  • 图论11-欧拉回路与欧拉路径+Hierholzer算法实现
  • (一)什么是Vite——vite介绍与使用
  • 直流电动机四象限运行控制变流器设计
  • 虹科示波器 | 汽车免拆检修 | 2021款广汽丰田威兰达PHEV车发动机故障灯异常点亮
  • 机器学习和深度学习领域的算法和模型
  • 减轻关键基础设施网络安全风险的 3 种方法
  • Redis的特性以及使用场景
  • 【python后端】- 初识Django框架
  • 队列与堆栈:原理、区别、算法效率和应用场景的探究
  • 数据结构与算法【链表:一】Java实现
  • 数据结构 | 队列的实现
  • flutter 集成 高德地图,退出界面闪退
  • 数据结构----链式栈的操作
  • 识别伪装IP的网络攻击方法
  • C 语言指针
  • 学【Java多态】-- 写高质量代码
  • 【汇编】内存的读写与地址空间、寄存器及数据存储
  • DSP生成hex方法
  • GZ038 物联网应用开发赛题第7套
  • ELK之Logstash解析时间相差8h的问题
  • uniapp+vite+vue3开发跨平台app,运行到安卓模拟器调试方法
  • Ubuntu诞生已经19年了
  • 跟着基金买,别墅靠大海?买基金重仓股票,会破产吗?| 附最新选股结果
  • 【教3妹学编辑-mysql】mybatis查询条件遇到的坑及解决方案
  • 032-从零搭建微服务-定时服务(一)
  • 精通Nginx(11)-缓存
  • 用excel计算矩阵的乘积
  • 【微软技术栈】C#.NET 中使用依赖注入
  • 开启学历新征程,电大搜题助您轻松获取知识
  • Redis 安装