1
我有線程限制的問題。我想用QThread來做。所以SpiderThread是QThread對象爬行的一些url。但我想一次限制工作線程到X線程。我之前使用threadpool和QRunnable完成了它,但是當網址數量很大時,它的缺點是很大。所以我有這個簡單的代碼:Python PyQT/PySide QThread限制
self.threads = []
for url in self.urls:
th = SpiderThread(url)
th.updateresultsSignal.connect(self.update_results)
self.threads.append(th)
th.start()
任何人都有使用QThread限制線程的工作示例?
對不起,這個例子對我來說太髒了。 你的意思是添加所有的URL到隊列,然後url = queue.get()(不是彈出)或者你的意思是使用list然後彈出。 我認爲這將會處理10次 - 每個線程一次,而不是一次10個線程。 – Nuncjo
Ok nvm,我管理這項工作。我會測試一段時間謝謝。 – Nuncjo
您必須從隊列中彈出每個url,否則其他線程將處理相同的URL。我已經清理了一些適當的方法名稱等例子。 – Schollii