python多线程原理qthread_利用PyQt中的QThread类实现多线程

本文详细介绍了如何在PyQt5环境下利用QThread类创建多线程,并通过pyqtSignal实现线程间的信息传递。通过定义和重写QThread子类的初始化、析构及run方法,创建并启动线程。同时,展示了如何定义信号、触发和捕获信号,以进行回调处理。
摘要由CSDN通过智能技术生成

用PyQt中的QThread类实现多线程

利用PyQt中的pyqtSignal类实现信息的触发和捕获,即定义事件和订阅事件

利用QThread类实现多线程的方法

1,新建一个python类,继承自QThread

from PyQt5.QtCore import QThread

class SubThread(QThread):

2,重写__init__(),__del__()和run()函数

from PyQt5.QtCore import QThread

class SubThread(QThread):

def __init__(self):

super().__init__()

# 以下加入需要的代码

def __del__(self):

self.wait()

def run(self):

# 以下加入子线程执行的代码

3,将继承自QThread类实例化,然后调用实例对象的start()函数,即可开启新线程

【重点说明】

QThread的子类的实例,必须放在app = QtWidgets.QApplication(sys.argv)和sys.exit(app.exec_())代码之间。

if __name__ == '__main__':

app = QtWidgets.QApplication(sys.argv)

subthread = SubThread()

subthread.start()

sys.exit(app.exec_())

利用pyqtSignal类实现信息触发和捕获的

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值