TERuleQueryTab ResultsUpdater: yield every 10 rules.

Give the main thread a chance to catch up if there happens to only be
a single CPU core available.
This commit is contained in:
Chris PeBenito 2015-06-30 11:09:50 -04:00
parent e51410191b
commit c8e168cd3e

View File

@ -358,14 +358,19 @@ class ResultsUpdater(QObject):
self.table_results_model.beginResetModel()
results = []
counter = 0
for item in self.query.results():
counter += 1
results.append(item)
self.raw_line.emit(str(item))
if QThread.currentThread().isInterruptionRequested():
break
elif not counter % 10:
# yield execution every 10 rules
QThread.yieldCurrentThread()
self.table_results_model.resultlist = results
self.table_results_model.endResetModel()