QT 中的多线程 --- moveToThread 文章
最编程
2024-05-22 22:35:01
...
https://zhuanlan.zhihu.com/p/349896858
QThread 类提供了一个与平台无关的管理线程的方法。一个 QThread 对象管理一个线程。QThread 的执行从 run() 函数的执行开始,在 Qt 自带的 QThread 类中,run() 函数通过调用 exec() 函数来启动事件循环机制,并且在线程内部处理 Qt 的事件。在 Qt 中建立线程的主要目的就是为了用线程来处理那些耗时的后台操作,从而让主界面能及时响应用户的请求操作。QThread 的使用方法有如下两种:
- QObject::moveToThread()
- 继承 QThread 类
下面通过具体的方法描述和例子来介绍第一种方法,第二种方法在下一篇文章中介绍。
QObject::moveToThread() 方法
方法描述
- 定义一个继承于 QObject 的 worker 类,在 worker 类中定义一个槽函数 doWork(),这个函数中定义线程需要做的工作。
- 在要使用线程的 controller 类中,新建一个 QThread 的对象和 woker 类对象,使用 moveToThread() 方法将 worker 对象的事件循环全部交由 QThread 对象处理。
- 建立相关的信号函数和槽函数进行连接,然后发出信号触发 QThread 的槽函数,使其执行工作。
原文地址:https://www.cnblogs.com/7star/p/16007812.html
上一篇: QThread 认知
推荐阅读
-
QT<28>Qt在.ini配置文件中的读写-秒,读取.ini配置文件中的读写-秒,读取.ini配置文件中的读写-秒。
-
橡皮筋界面在QT开发中的应用
-
华为鸿蒙系统爆出惊天骗局!-点击图片直达书单现场 今日话题 留言分享:你认为华为的鸿蒙的系统发布之后将会有什么样的改变 ?或者留言分享你觉得华为的鸿蒙系统发布之后对安卓,苹果会有怎么样的冲击(留言字数50-100 )?精选留言中随机抽取一名留言 幸运读者(次日头条文章第一个置顶留言公布)送出上图中书单中任意书籍一本。 ▲ END 关注民工哥技术之路微信公众号,在后台回复关键字:1024 或 2048 ,可以获取一份最新整理的技术干货。 - MORE | 往期精彩文章 -
-
Qt模块在CMake中的最佳添加方式
-
Qt中的TCP心跳机制
-
在Qt中获取实时系统时间的方法
-
在Qt中获取实时日期和时间:QDateTime、QTime和QDate的使用教程
-
SQL Server 日期转换方法大全:支持各种数据类型和格式样式的转换 说明: 本篇文章详细介绍了如何在SQL Server中进行日期转换,包括各种数据类型和格式样式的转换方法。其中包括了科威特算法的阿拉伯样式中的数据格式,并提供了多种样式可供选择。此外,还给出了详细的示例和注意事项,帮助读者更好地理解和应用这些转换方法。
-
无人值守操作技巧系列文章(2):MSFVenom 中隐藏的参数解析
-
无人值守操作技巧系列文章(2):MSFVenom 中隐藏的参数解析