快速解决pyqt5窗体关闭后子线程不同时退出的问题


Posted in Python onJune 19, 2019

用pyqt5设计了一个主窗体,在窗体运行时需要把一个无限循环放在一个线程去工作。运行后,发现通过鼠标按主窗体的关闭按键关闭主创体后,线程不会自动终止,依然在运行。尽管对我的使用场景来说,这不是问题,因为立马就关机了。但在调试阶段就恨繁,因为后台线程很占资源。怎么能让主窗体关闭是子线程也退出呢?百度了许久,很多方法都不行。

主要试过的有:

1、设置:self.thread.Daemon=True

2、在子线程设置一个变量,通过改变变量的值使循环不满足条件,自动结束

3、设置析构函数

还有别的奇葩。都不行。

今天发现,其实很简单。就是重构主窗体的closeEvent()函数。

def closeEvent(self,event):

   sys.exit(app.exec_())

本来在主程序里是有这条的,估计按X推出主窗体时并没有出发这条代码,所以子线程就不会结束。重构了这个函数,问题解决。

以上这篇快速解决pyqt5窗体关闭后子线程不同时退出的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 列表(List)操作方法详解
Mar 11 Python
python利用urllib和urllib2访问http的GET/POST详解
Sep 27 Python
python机器学习理论与实战(六)支持向量机
Jan 19 Python
python如何通过实例方法名字调用方法
Mar 21 Python
Python3使用SMTP发送带附件邮件
Jun 16 Python
Django实战之用户认证(初始配置)
Jul 16 Python
Python进程间通信 multiProcessing Queue队列实现详解
Sep 23 Python
浅谈Python类中的self到底是干啥的
Nov 11 Python
Python Flask上下文管理机制实例解析
Mar 16 Python
基于python实现获取网页图片过程解析
May 11 Python
python中Django文件上传方法详解
Aug 05 Python
Python3实现英文字母转换哥特式字体实例代码
Sep 01 Python
Pyqt5 实现跳转界面并关闭当前界面的方法
Jun 19 #Python
pyqt5使用按钮进行界面的跳转方法
Jun 19 #Python
Python发展史及网络爬虫
Jun 19 #Python
Python QQBot库的QQ聊天机器人
Jun 19 #Python
python替换字符串中的子串图文步骤
Jun 19 #Python
python实现QQ批量登录功能
Jun 19 #Python
python里 super类的工作原理详解
Jun 19 #Python
You might like
PHP类与对象后期静态绑定操作实例详解
2018/12/20 PHP
laravel框架使用阿里云短信发送消息操作示例
2020/02/15 PHP
PHPstorm启用自动换行的方法详解(IDE)
2020/09/17 PHP
通过Javascript读取本地Excel文件内容的代码示例
2014/04/08 Javascript
Node.js中的事件驱动编程详解
2014/08/16 Javascript
JavaScript代码复用模式详解
2014/11/07 Javascript
jquery实现右键菜单插件
2015/03/29 Javascript
Nodejs学习笔记之测试驱动
2015/04/16 NodeJs
纯javascript实现图片延时加载方法
2015/08/21 Javascript
JavaScript实现简单的tab选项卡切换
2016/01/05 Javascript
Angular页面间切换及传值的4种方法
2016/11/04 Javascript
js字符串操作总结(必看篇)
2016/11/22 Javascript
详解vue-resource promise兼容性问题
2017/06/20 Javascript
Vue header组件开发详解
2018/01/26 Javascript
详解AngularJS 过滤器的使用
2018/06/02 Javascript
vue项目中使用Hbuilder打包app 设置沉浸式状态栏的方法
2018/10/22 Javascript
node使用Mongoose类库实现简单的增删改查
2018/11/08 Javascript
vscode下vue项目中eslint的使用方法
2019/01/13 Javascript
基于js实现复制内容到操作系统粘贴板过程解析
2019/10/11 Javascript
Vue3.x源码调试的实现方法
2019/10/13 Javascript
vue封装可复用组件confirm,并绑定在vue原型上的示例
2019/10/31 Javascript
关于Vue中$refs的探索浅析
2020/11/05 Javascript
JavaScript async/await原理及实例解析
2020/12/02 Javascript
[01:38]DOTA2 2015国际邀请赛中国区预选赛 Showopen
2015/06/01 DOTA
[01:28]一分钟告诉你DOTA2 TI9不朽宝藏Ⅱ中有什么!
2019/07/09 DOTA
初步认识Python中的列表与位运算符
2015/10/12 Python
利用selenium爬虫抓取数据的基础教程
2019/06/10 Python
python 解决flask uwsgi 获取不到全局变量的问题
2019/12/22 Python
Python代码一键转Jar包及Java调用Python新姿势
2020/03/10 Python
浅谈Python中threading join和setDaemon用法及区别说明
2020/05/02 Python
工作中的自我评价如何写好
2013/10/28 职场文书
制药工程专业职业生涯规划范文
2014/03/10 职场文书
校园之声广播稿
2015/08/18 职场文书
儿童诗两首教学反思
2016/02/23 职场文书
2019感恩宣传标语!
2019/07/05 职场文书
漫画《尖帽子的魔法工坊》宣布动画化
2022/04/06 日漫