Issue #13140: Fix the daemon_threads attribute of ThreadingMixIn.
diff --git a/Lib/SocketServer.py b/Lib/SocketServer.py
index 71b9caa..2ff3888 100644
--- a/Lib/SocketServer.py
+++ b/Lib/SocketServer.py
@@ -589,8 +589,7 @@
         """Start a new thread to process the request."""
         t = threading.Thread(target = self.process_request_thread,
                              args = (request, client_address))
-        if self.daemon_threads:
-            t.setDaemon (1)
+        t.daemon = self.daemon_threads
         t.start()
 
 
diff --git a/Lib/test/test_socketserver.py b/Lib/test/test_socketserver.py
index 41634e7..08fb033 100644
--- a/Lib/test/test_socketserver.py
+++ b/Lib/test/test_socketserver.py
@@ -123,7 +123,6 @@
         self.assertEqual(server.server_address, server.socket.getsockname())
         return server
 
-    @unittest.skipUnless(threading, 'Threading required for this test.')
     @reap_threads
     def run_server(self, svrcls, hdlrbase, testfunc):
         server = self.make_server(self.pickaddr(svrcls.address_family),
diff --git a/Misc/NEWS b/Misc/NEWS
index c7637be..2701b87 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -74,6 +74,8 @@
 Library
 -------
 
+- Issue #13140: Fix the daemon_threads attribute of ThreadingMixIn.
+
 - Issue #2892: preserve iterparse events in case of SyntaxError.
 
 - Issue #670664: Fix HTMLParser to correctly handle the content of