[Eric] Large profiler result - slow

Tonal tonal at promsoft.ru
Sat Mar 31 20:12:14 BST 2007


Path for improve performance show large profiler result.
-------------- next part --------------
diff U3 D:/dump/eric4-snapshot-20070325/eric/DataViews/PyProfileDialog.py C:/Lang/Python/24/Lib/site-packages/eric4/DataViews/PyProfileDialog.py
--- D:/dump/eric4-snapshot-20070325/eric/DataViews/PyProfileDialog.py	Sun Apr 01 01:33:34 2007
+++ C:/Lang/Python/24/Lib/site-packages/eric4/DataViews/PyProfileDialog.py	Sun Apr 01 02:06:11 2007
@@ -145,8 +145,11 @@
         prim_calls  = 0
         total_tt    = 0
         
-        # now go through all the files
-        for func, (cc, nc, tt, ct, callers) in self.stats.items():
+        try:
+          self.resultList.setUpdatesEnabled(False)
+          self.resultList.setSortingEnabled(False)
+          # now go through all the files
+          for func, (cc, nc, tt, ct, callers) in self.stats.items():
             if self.cancelled:
                 return
             
@@ -175,8 +178,15 @@
                                             func[2])
                 
             progress += 1
-            self.checkProgress.setValue(progress)
-            QApplication.processEvents()
+            if progress % 100:
+              self.checkProgress.setValue(progress)
+              self.resultList.setUpdatesEnabled(True)
+              QApplication.processEvents()
+              self.resultList.setUpdatesEnabled(False)
+        finally:
+          self.resultList.setSortingEnabled(True)
+          self.resultList.setUpdatesEnabled(True)
+        self.checkProgress.setValue(progress)
         self.__resortResultList()
         
         # now do the summary stuff


More information about the Eric mailing list