[Python-checkins] bpo-45187: Fix dangling threads in test_socket.CreateServerFunctionalTest (GH-28422)

serhiy-storchaka webhook-mailer at python.org
Fri Sep 17 14:56:46 EDT 2021


https://github.com/python/cpython/commit/51ebb7f4f5e9bdcf8279a1d91be9569706f6bead
commit: 51ebb7f4f5e9bdcf8279a1d91be9569706f6bead
branch: main
author: Serhiy Storchaka <storchaka at gmail.com>
committer: serhiy-storchaka <storchaka at gmail.com>
date: 2021-09-17T21:56:41+03:00
summary:

bpo-45187: Fix dangling threads in test_socket.CreateServerFunctionalTest (GH-28422)

files:
M Lib/test/test_socket.py

diff --git a/Lib/test/test_socket.py b/Lib/test/test_socket.py
index d064c6705a484..eeb8e8c98a149 100755
--- a/Lib/test/test_socket.py
+++ b/Lib/test/test_socket.py
@@ -6528,13 +6528,6 @@ def test_dualstack_ipv6_family(self):
 class CreateServerFunctionalTest(unittest.TestCase):
     timeout = support.LOOPBACK_TIMEOUT
 
-    def setUp(self):
-        self.thread = None
-
-    def tearDown(self):
-        if self.thread is not None:
-            self.thread.join(self.timeout)
-
     def echo_server(self, sock):
         def run(sock):
             with sock:
@@ -6548,8 +6541,9 @@ def run(sock):
 
         event = threading.Event()
         sock.settimeout(self.timeout)
-        self.thread = threading.Thread(target=run, args=(sock, ))
-        self.thread.start()
+        thread = threading.Thread(target=run, args=(sock, ))
+        thread.start()
+        self.addCleanup(thread.join, self.timeout)
         event.set()
 
     def echo_client(self, addr, family):



More information about the Python-checkins mailing list