pyqt5多线程优化_告别阻塞!实例讲解PyQt5多线程QThread的运用

点击关注州的先生

编程应用、实战教程,不容错过

PS:本文来自于小伙伴的投稿,由伊洛首发于简书。

QThread类提供了一种独立于平台的线程管理方法。

QThread对象管理程序中的一个控制线程,在run()中开始执行QThreads。默认情况下,run()通过调用exec()启动事件循环,并在线程中运行Qt事件循环。

classThread(QThread):

def__init__(self):

super().__init__()

defrun(self):

# 线程相关代码

pass

# 创建一个新的线程

thread=Thread()

thread.start()

在使用线程时可以直接得到Thread实例,调用其start()函数即可启动线程。

线程启动后,会调用其实现的run方法,该方法就是线程的执行函数,当run()退出之后线程基本就结束了。 QThread中常用的方法如下图所示:

QThread常用方法.png

例子实现

下面的例子通过在QThread中定义两个自定义信号实现时间的变化和动态为QListWidget添加控件

#!/usr/bin/env python

# -*- coding: utf-8 -*-

"""

Created on 2019年1月16日

@author: yiluo

@site: https://github.com/bingshilei

你可能感兴趣的:(pyqt5多线程优化)