QThread的学习

news2024/11/23 2:58:00

锁住该线程直到下面的情况之一出现:

(1)和该线程连接的对象已经执行完成(例如:当它从run()中返回时)

如果该线程已经结束,该函数将返回true。

如果该线程还没有开始,它也返回true。

(2)time毫秒已经过去。如果time是ULONG_MAX(默认值),那么等待将绝不会超时(线程必须从run()中返回)。如果等待超时,该函数将返回false。

这提供了与POSIX的pthread_join()函数类似的功能。

告诉线程的事件循环退出伴随着一个返回值。

调用该函数后,线程离开事件循环,从该调用返回到QEventLoop::exec().

QEventLoop::exec()函数返回returnCode。

按照惯例,returnCode=0,意味着成功,任何非0值意味着错误。

注意这不像C函数库中的同名函数,该函数返回给调用者。它是停下的事件处理者。

在QThread::exec()再次被调用之前,这个线程中不会再启动QEventLoops。

如果QThread::exec()中的eventloop没有运行,那么对QThread::exec()的下一次调用也会立即返回。

进入事件循环和等待直到exit()被调用,返回来自exit()的值。该值返回0如果exit()是通过quit()来调用的。

这个函数应该在run()中调用。必须调用此函数来启动事件处理。

在这个示例中,线程将退出在run函数返回后。除非你调用exec(),否则将没用任何事件循环运行。

记住QThread实例生存在初始化它的旧线程,不是生存在调用run()的新线程是重要的。

这意味着QThread的槽函数将在旧线程执行。因此,希望在新线程中调用槽函数的开发者必须使用

worker-object方法,新槽不应该直接被执行在一个子类化的QThread中。

当子类化QThread时,注意构造者在旧线程执行,run()在新线程执行。

如果一个成员变量被两个函数访问,那么该变量可能被两个不同的线程访问。检查它是否安全。

在跨不同线程与对象交互时必须小心。详细信息请参见同步线程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1592397.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux 内核学习(2) --- regulator 框架

目录 Regulator 介绍Regulator provider 注册struct regulator_descstruct regualtor_configDTS 配置和解析On BoardConfig 配置regulator_ops总结 Regulator Consumer 使用struct regulator 获取regulator 操作使用Multi Regulator 参考博客 Regulator 介绍 Regulator 指的是…

电子烟特效音语音方案选型-WTN6020-8S-E

随着科技的迅猛进步,电子烟行业亦在持续创新与突破,引领着全新的潮流。其中,电子烟产品所特有的吸烟声音特效播报功能,无疑成为了技术革新的璀璨亮点。这一设计巧妙地将吸烟的声效融入使用体验中,使得用户在吸电子烟时…

Javascript 斐波那契搜索-迭代与递归(Fibonacci Search)

给定一个大小为 n 的排序数组 arr[] 和要在其中搜索的元素 x。如果 x 存在于数组中,则返回 x 的索引,否则返回 -1。 例子: 输入: arr[] {2, 3, 4, 10, 40}, x 10输出: 3 元素 x 出现在索引 3 处。 输入&#xff1…

HarmonyOS开发实例:【app帐号管理】

应用帐号管理 介绍 本示例选择应用进行注册/登录,并设置帐号相关信息,简要说明应用帐号管理相关功能。效果图如下: 效果预览 使用说明参考鸿蒙文档:qr23.cn/AKFP8k点击或者转到。 1.首页面选择想要进入的应用,首次进…

【Redis】持久化

文章目录 一、RDB1.1、RDB的自动备份与手动备份1.1.1、自动备份1.1.2、手动备份 1.2、RDB优点1.3、RDB缺点1.4、RDB快照1.5、RDB优化配置项 二、AOF2.1、AOF工作流程2.2、AOF写回策略2.3、MP-AOF实现2.4、AOF优缺点2.5、AOF重写机制 三、RDBAOF混合持久化3.1、数据恢复顺序和加…

生产环境中秒杀接口并发量剧增与负载优化策略探讨

✨✨谢谢大家捧场,祝屏幕前的小伙伴们每天都有好运相伴左右,一定要天天开心哦!✨✨ 🎈🎈作者主页: 喔的嘛呀🎈🎈 目录 引言 1. 实施限流措施 1.1 令牌桶算法: 1.2 漏…

如何申请阿里云服务器学生优惠,入口在这呢!

阿里云学生服务器免费申请,之前是云翼计划学生服务器9元/月,现在是高校计划,学生服务器可以免费申请,先完成学生认证即可免费领取一台云服务器ECS,配置为2核2G、1M带宽、40G系统盘,在云服务器ECS实例过期之…

什么是队头阻塞以及如何解决

前言 通常我们提到队头阻塞,指的可能是TCP协议中的队头阻塞,但是HTTP1.1中也有一个类似TCP队头阻塞的问题,下面各自介绍一下。 TCP队头阻塞 队头阻塞(head-of-line blocking)发生在一个TCP分节丢失,导致…

ip地址切换器安卓版,保护隐私,自由上网

在移动互联网时代,随着智能手机和平板电脑的普及,移动设备的网络连接变得愈发重要。为了满足用户在不同网络环境下的需求,IP地址切换器安卓版应运而生。本文将以虎观代理为例,为您详细解析IP地址切换器安卓版的功能、应用以及其所…

26、链表-环形链表II

思路: 这道题就是判断链表中是否有环,首先使用集合肯定可以快速地解决,比如通过一个set集合遍历,如果遍历过程中有节点在set中已经存在那么说明存在环。返回这个节点即可 第二种方式就是通过快慢指针方式寻找环。如何做呢&#xf…

震惊!借助Coze白嫖GPT4-128k解决方案

震惊!某大佬借助Coze白嫖GPT4-128k解决方案 前言 此文章介绍如何免费使用GPT-4高级模型并拓展API功能 最近的 Coze 在国内开放了,可以免费使用大模型。但是和国外的有点区别,国外版本使用的chatgpt4,国内版本使用的是语雀大模型。 Coze是一…

《前端防坑》- JS基础 - 你觉得typeof nullValue === null 么?

问题 JS原始类型有6种Undefined, Null, Number, String, Boolean, Symbol共6种。 在对原始类型使用typeof进行判断时, typeof stringValue string typeof numberValue number 如果一个变量(nullValue)的值为null,那么typeof nullValue "?" const u …

图书推荐:用ChatGPT获取在线被动收入的8个方法

Universe S. The ChatGPT Money Mastery. Unlocking Online Income..for Dummies 2023 想要彻底革新您的收入模式吗?《用ChatGPT获取在线被动收入的8个方法》一书是您不可错过的指南。 在这个数字化飞速发展的时代,人工智能成为了开启成功之门的钥匙。…

2024年广东省网络系统管理样题第1套网络搭建部分

2024年广东省职业院校技能大赛样题1 信息安全管理与评估 网络系统管理 网络搭建与应用 云计算 软件测试 移动应用开发 任务书,赛题,解析等资料,知识点培训服务 添加博主wx:liuliu5488233 网络系统管理赛项 模块A:网络…

操作系统(第四周 第二堂)

目录 回顾 进程运行 进程的创建 进程的工作 举例 进程的删除 举例1(走到return 0结束) 举例2(利用exit(1)结束) 进程通信 共享内存 生产者算法 消费者算法 消息传递 定义 算法实现 总结 回顾…

数据结构--链式队列

一.链式队列的设计思想: 首先一定要理解设计的初衷,就是队头队尾的位置要满足怎么快怎么设计.那么分析如下: 最终我们敲定了入队,出队的时间复杂度都为O(1)的一种设计,也就是第四种设计;当然,头节点的数据域不使用,所以我们设计链式队列的头节点的时候删除数据域即可,链式队列…

了解虚拟路由器冗余协议(VRRP)

虚拟路由器冗余协议(VRRP)是一种被广泛使用的网络协议,旨在增强网络的可靠性和可用性。对于网络管理员和工程师来说,了解VRRP是确保网络能够实现无缝故障转移和保持不间断连接的关键。本文将深入探讨VRRP的基础知识,包…

ZooKeeper分布式服务与Kafka消息队列+ELKF整合方案

前言 ZooKeeper 是一个分布式的、开放源码的分布式应用程序协调服务,提供配置维护、命名服务、分布式同步、组服务等功能; Kafka 是一个开源的分布式流处理平台,它被设计用来处理实时数据流,包括发布和订阅消息系统、日志收集以…

leetcode经典困难题-接雨水

. - 力扣(LeetCode) 42. 接雨水 困难 相关标签 相关企业 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 输入:height [0,1,0,2,1,0,1,3,2,1,…

单链表详解(无哨兵位),实现增删改查

1.顺序表对比单链表的缺点 中间或头部插入时,需要移动数据再插入,如果数据庞大会导致效率降低每次增容就需要申请空间,而且需要拷贝数据,释放旧空间增容造成浪费,因为一般都是以2倍增容 2.链表的基础知识 链表也是线…