diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2011-02-25 22:07:43 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2011-02-25 22:07:43 (GMT) |
commit | 0bd4deba383b1c7f05a4e0c94f1d4b96050a1308 (patch) | |
tree | fd95fcfc38af8fceb8e56409f63e4e2bd30e0c52 /Lib/test | |
parent | 4bc685752f9f1056545ab121db833a4a68dd794c (diff) | |
download | cpython-0bd4deba383b1c7f05a4e0c94f1d4b96050a1308.zip cpython-0bd4deba383b1c7f05a4e0c94f1d4b96050a1308.tar.gz cpython-0bd4deba383b1c7f05a4e0c94f1d4b96050a1308.tar.bz2 |
Issue #6064: Add a `daemon` keyword argument to the threading.Thread
and multiprocessing.Process constructors in order to override the
default behaviour of inheriting the daemonic property from the current
thread/process.
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/test_multiprocessing.py | 12 | ||||
-rw-r--r-- | Lib/test/test_threading.py | 8 |
2 files changed, 20 insertions, 0 deletions
diff --git a/Lib/test/test_multiprocessing.py b/Lib/test/test_multiprocessing.py index 465a831..d154fce 100644 --- a/Lib/test/test_multiprocessing.py +++ b/Lib/test/test_multiprocessing.py @@ -163,6 +163,18 @@ class _TestProcess(BaseTestCase): self.assertEqual(current.ident, os.getpid()) self.assertEqual(current.exitcode, None) + def test_daemon_argument(self): + if self.TYPE == "threads": + return + + # By default uses the current process's daemon flag. + proc0 = self.Process(target=self._test) + self.assertEquals(proc0.daemon, self.current_process().daemon) + proc1 = self.Process(target=self._test, daemon=True) + self.assertTrue(proc1.daemon) + proc2 = self.Process(target=self._test, daemon=False) + self.assertFalse(proc2.daemon) + @classmethod def _test(cls, q, *args, **kwds): current = cls.current_process() diff --git a/Lib/test/test_threading.py b/Lib/test/test_threading.py index ecbbdbf..13a428d 100644 --- a/Lib/test/test_threading.py +++ b/Lib/test/test_threading.py @@ -427,6 +427,14 @@ class ThreadTests(BaseTestCase): t.daemon = True self.assertTrue('daemon' in repr(t)) + def test_deamon_param(self): + t = threading.Thread() + self.assertFalse(t.daemon) + t = threading.Thread(daemon=False) + self.assertFalse(t.daemon) + t = threading.Thread(daemon=True) + self.assertTrue(t.daemon) + class ThreadJoinOnShutdown(BaseTestCase): |