本帖最后由 MyModHeaven 于 2023-3-14 20:04 编辑
一楼的老哥说的办法可以,但总是有些“偏方”的味道,不知道还有没有其他的办法
报错:QThread: Destroyed while thread is still running
我感觉可能是第一个 self.I 的线程还没结束,第二个赋值就来了,然后就销毁了第一个线程
那么,该如何命名各个线程?
.....
for i in range(6):
self.I = Img(imgUrl)
self.I.exceptionSin.connect(self.addImg)
self.I.imgSin.connect(self.addImg)
self.I.start()
.....
class Img(QtCore.QThread):
exceptionSin = QtCore.pyqtSignal(bool)
imgSin = QtCore.pyqtSignal(bytes)
def __init__(self, imgUrl):
super().__init__()
self.imgUrl = imgUrl
def run(self):
while True:
try:
imgContent = requests.get(self.imgUrl, headers={'user-agent': 'Chrome/110.0.0.0'}).content
self.imgSin.emit(imgContent)
break
except:
self.exceptionSin.emit(False)
|