QThread的一些使用心得


qthread这个类主要用于解决pyqt中多线程的问题,常见用法是将后台代码封装在该类的run()方法中,再对qthread对象执行start()函数来启动线程。

但往往一个业务会有粒度划分,多个粒度就意味会有多个qthread对象,要想保证这些qthread对象按照顺序依次在后台执行就变得非常有必要了。

这这里我想到利用信号机制来解决这个问题,qthread1的run()函数尾部写入self.emit(signal1,args),将signal1绑定在function2上,qthread2.start()语句放在function2中,这样qthread1执行结束之后就会发出signal1触发function2,继而执行function2内部的qthread2.start()语句。

这种链式的执行方式非常接近回调函数的思路,屡试不爽,记录一下。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM