Pyqt5-qthread 中多线程的编写方法

对于线程的概念就不在此处进行详细的说明了,下面就说明如何使用:

对于你想要多线程的运行的逻辑业务,你都需要实例化一个线程对象:

class WorkThread(QThread):
    trigger = pyqtSignal()

    def __int__(self):
        super(WorkThread, self).__init__()

    def run(self):
        #这一部分就可以写入你想要执行的代码就好
        # print('开始执行了run')
        # for i in range(2000000000):
        #     pass
        # 
        # # 循环完毕后发出信号
        # print('1线程运行完了')
        self.trigger.emit()

上面就是你的类的写法:

    def EquipmentCStopFunction(self):
        print('执行C物体停止功能开始')

        self.workThread=WorkThread()  #实例化一个线程对象
        self.workThread.trigger.connect(self.timeStop1)  #链接你执行完这个线程之后的想要触发的 函数的名字
        self.workThread.start()  #这个就是启动你的想要执行额线程,注意这个是start 而不是run



        self.workThread1 = WorkThread1()        #实例化一个线程对象
        self.workThread1.trigger.connect(self.timeStop2)#链接你执行完这个线程之后的想要触发的 函数的名字
        self.workThread1.start()  #这个就是启动你的想要执行额线程,注意这个是start 而不是run

这样就是一个写多线程的整体的的框架。

 

有什么问题,欢迎互相交流

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