@@ -1568,8 +1568,15 @@ def testSelectedItemPingLatency(self):
15681568 references = list (AS_UserServers ()[index ] for index in indexes )
15691569
15701570 for index , reference in zip (indexes , references ):
1571- worker = TestPingLatencyWorker (reference )
1571+ if APP ().isExiting ():
1572+ break
1573+
1574+ assert isinstance (reference , ConfigurationFactory )
15721575
1576+ if reference .deleted :
1577+ continue
1578+
1579+ worker = TestPingLatencyWorker (reference )
15731580 worker .setAutoDelete (True )
15741581 worker .finished .connect (
15751582 functools .partial (
@@ -1593,8 +1600,15 @@ def testSelectedItemTcpingLatency(self):
15931600 references = list (AS_UserServers ()[index ] for index in indexes )
15941601
15951602 for index , reference in zip (indexes , references ):
1596- worker = TestTcpingLatencyWorker (reference )
1603+ if APP ().isExiting ():
1604+ break
1605+
1606+ assert isinstance (reference , ConfigurationFactory )
1607+
1608+ if reference .deleted :
1609+ continue
15971610
1611+ worker = TestTcpingLatencyWorker (reference )
15981612 worker .setAutoDelete (True )
15991613 worker .finished .connect (
16001614 functools .partial (
@@ -1660,10 +1674,15 @@ def handleTestDownloadSpeedJobXXX(
16601674 jobTimer : QtCore .QTimer ,
16611675 isMulti : bool ,
16621676 ):
1663- try :
1664- if isMulti and not self .testDownloadSpeedMultiSema .tryAcquire (1 ):
1665- return
1677+ if APP ().isExiting ():
1678+ jobTimer .stop ()
1679+
1680+ return
16661681
1682+ if isMulti and not self .testDownloadSpeedMultiSema .tryAcquire (1 ):
1683+ return
1684+
1685+ try :
16671686 index , factory , timeout = jobQueue .get_nowait ()
16681687 except queue .Empty :
16691688 # Queue is empty
@@ -1686,7 +1705,9 @@ def handleTestDownloadSpeedJobXXX(
16861705
16871706 if not APP ().isExiting ():
16881707 # Fetch next job.
1689- jobTimer .start (1 )
1708+ jobTimer .start (5 )
1709+ else :
1710+ jobTimer .stop ()
16901711 else :
16911712 testDownloadSpeedPort = 20809
16921713
@@ -1699,19 +1720,23 @@ def handleTestDownloadSpeedJobXXX(
16991720
17001721 if not APP ().isExiting ():
17011722 # Fetch next job.
1702- jobTimer .start (1 )
1723+ jobTimer .start (5 )
1724+ else :
1725+ jobTimer .stop ()
17031726 else :
1704- self .testDownloadSpeedByFactory (
1705- index ,
1706- factory ,
1707- testDownloadSpeedPort ,
1708- timeout ,
1709- isMulti ,
1710- )
1711-
17121727 if not APP ().isExiting ():
1728+ self .testDownloadSpeedByFactory (
1729+ index ,
1730+ factory ,
1731+ testDownloadSpeedPort ,
1732+ timeout ,
1733+ isMulti ,
1734+ )
1735+
17131736 # Fetch next job.
1714- jobTimer .start (1 )
1737+ jobTimer .start (5 )
1738+ else :
1739+ jobTimer .stop ()
17151740
17161741 @QtCore .Slot ()
17171742 def handleTestDownloadSpeedJob (self ):
0 commit comments